From: Marius Gavrilescu Date: Mon, 1 Dec 2014 13:22:48 +0000 (+0200) Subject: Fix problem entry during contest X-Git-Url: http://git.ieval.ro/?a=commitdiff_plain;h=84ca7535f20b19636518768b8f578b4394bf6391;p=plack-app-gruntmaster.git Fix problem entry during contest --- diff --git a/lib/Plack/App/Gruntmaster.pm b/lib/Plack/App/Gruntmaster.pm index f647783..3e37ef1 100644 --- a/lib/Plack/App/Gruntmaster.pm +++ b/lib/Plack/App/Gruntmaster.pm @@ -153,7 +153,9 @@ sub dispatch_request{ sub (/us/:user) { response us_entry => user->name, db->user_entry($_{user}) }, sub (/ct/:contest) { response ct_entry => contest->name, db->contest_entry($_{contest}) }, sub (/log/:job) { response log_entry => "Job $_{job}", db->job_entry($_{job}) }, - sub (/pb/:problem + ?:contest~) { + sub (/pb/:problem + ?contest~) { + my (undef, undef, $contest) = @_; + $_{contest} = $contest; return NOT_FOUND if !contest && !problem->is_in_archive || contest && !db->contest_problems->find($_{contest}, $_{problem}); forbid problem->is_private; response pb_entry => problem->name, db->problem_entry($_{problem}, $_{contest}, remote_user && remote_user->id);