Skip to content

Commit d6825ee

Browse files
committed
Random blog button and navbar cleanup
1 parent 1f7f8e6 commit d6825ee

File tree

3 files changed

+14
-4
lines changed

3 files changed

+14
-4
lines changed

Web/lib/BlogDB/Web.pm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ sub startup ($self) {
111111
$r->post ( '/blog/new/:id' )->to( 'Blog#post_edit_new_blog' )->name( 'do_edit_new_blog' ); # Update a new blog.
112112
$auth->post( '/blog/publish/:id' )->to( 'Blog#post_publish_new_blog')->name( 'do_publish_new_blog' ); # Publish (PendingBlog -> Blog.)
113113
$r->get ( '/blog/v/:slug' )->to( 'Blog#get_view_blog' )->name( 'view_blog' ); # View specific blog
114+
$r->get ( '/blog/r' )->to( 'Blog#get_view_random_blog' )->name( 'view_random_blog' ); # 302 redirect the user to a random blog.
114115
$auth->get ( '/blog/e/:slug' )->to( 'Blog#get_edit_blog' )->name( 'edit_blog' ); # View edit page
115116
$auth->post( '/blog/e/:slug' )->to( 'Blog#post_edit_blog' )->name( 'do_edit_blog' ); # Post edits to blog
116117
$auth->post( '/blog/follow' )->to( 'Blog#post_blog_follow' )->name( 'do_follow_blog' ); # Follow a blog

Web/lib/BlogDB/Web/Controller/Blog.pm

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,14 @@ sub get_view_blog ($c) {
2424
);
2525
}
2626

27+
sub get_view_random_blog ( $c ) {
28+
my @blogs = $c->db->resultset('Blog')->all;
29+
30+
my $blog = $blogs[int rand scalar @blogs];
31+
32+
$c->redirect_to( $c->url_for( 'view_blog', { slug => $blog->slug }));
33+
}
34+
2735
sub get_edit_blog ($c) {
2836
$c->set_template( 'blog/edit' );
2937

Web/templates/simple/_/layout.tx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,14 @@
1919
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button>
2020
<div class="collapse navbar-collapse" id="navbarSupportedContent">
2121
<ul class="navbar-nav ms-auto mb-2 mb-lg-0">
22-
<li class="nav-item"><a class="nav-link" href="#">Home</a></li>
23-
<li class="nav-item"><a class="nav-link" href="[% $c.url_for('register') %]">Register</a></li>
2422
%% if ( $person ) {
2523
<li class="nav-item"><a class="nav-link" href="[% $c.url_for('tags') %]">Tags Manager</a></li>
26-
%% }
24+
%% } else {
25+
<li class="nav-item"><a class="nav-link" aria-current="page" href="[% $c.url_for( 'homepage' ) %]">Home</a></li>
26+
<li class="nav-item"><a class="nav-link" href="[% $c.url_for('register') %]">Register</a></li>
2727
<li class="nav-item"><a class="nav-link" href="#!">Contact</a></li>
28-
<li class="nav-item"><a class="nav-link active" aria-current="page" href="#">Blog</a></li>
28+
%% }
29+
<li class="nav-item"><a class="nav-link active" href="[% $c.url_for( 'view_random_blog' ) %]">Random Blog Button</a></li>
2930
</ul>
3031
</div>
3132
</div>

0 commit comments

Comments
 (0)