diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/VNDB/Handler/VNPage.pm | 7 | ||||
-rw-r--r-- | lib/VNDB/Util/LayoutHTML.pm | 1 |
2 files changed, 8 insertions, 0 deletions
diff --git a/lib/VNDB/Handler/VNPage.pm b/lib/VNDB/Handler/VNPage.pm index 510d2dfc..48732530 100644 --- a/lib/VNDB/Handler/VNPage.pm +++ b/lib/VNDB/Handler/VNPage.pm @@ -8,11 +8,18 @@ use VNDB::Func; YAWF::register( + qr{v/rand} => \&rand, qr{v([1-9]\d*)/rg} => \&rg, qr{v([1-9]\d*)(?:\.([1-9]\d*))?} => \&page, ); +sub rand { + my $self = shift; + $self->resRedirect('/v'.$self->dbVNGet(results => 1, order => 'RANDOM()')->[0]{id}, 'temp'); +} + + sub rg { my($self, $vid) = @_; diff --git a/lib/VNDB/Util/LayoutHTML.pm b/lib/VNDB/Util/LayoutHTML.pm index 774c2d09..72e3fbef 100644 --- a/lib/VNDB/Util/LayoutHTML.pm +++ b/lib/VNDB/Util/LayoutHTML.pm @@ -74,6 +74,7 @@ sub _menu { a href => '/hist', mt '_menu_recent_changes'; br; a href => '/t', mt '_menu_discussion_board'; br; a href => '/d6', mt '_menu_faq'; br; + a href => '/v/rand', mt '_menu_randvn'; br; a href => 'irc://irc.synirc.net/vndb', '#vndb'; lit ' (<a href="http://cgiirc.synirc.net/?chan=%23vndb">'.mt('_menu_webchat').'</a>)'; end; |