]> iEval git - plack-app-gruntmaster.git/blobdiff - lib/Plack/App/Gruntmaster.pm
Add solutions
[plack-app-gruntmaster.git] / lib / Plack / App / Gruntmaster.pm
index 3e37ef12996dca805965d8509596847418c4eb38..c8b04f3873a9bace214ef2620b3e6a87259dc0cf 100644 (file)
@@ -76,6 +76,7 @@ sub response {
                $params = $title;
                $title = 'No title';
        }
+       $params->{time} = time;
        bless {template => $template, title => $title, params => $params}, __PACKAGE__.'::Response'
 }
 
@@ -160,6 +161,10 @@ sub dispatch_request{
                        forbid problem->is_private;
                        response pb_entry => problem->name, db->problem_entry($_{problem}, $_{contest}, remote_user && remote_user->id);
                },
+               sub (/sol/:problem) {
+                       forbid !problem->is_in_archive;
+                       response sol => 'Solution of ' . problem->name, {solution => db->problem($_{problem})->solution};
+               },
 
                sub (/) { redispatch_to '/index' },
                sub (/:article) { [200, ['Content-Type' => 'text/html'], [render_article $_{article}, 'en']] }
This page took 0.023713 seconds and 4 git commands to generate.