From: Marius Gavrilescu Date: Fri, 14 Feb 2014 22:17:58 +0000 (+0200) Subject: Merge branch 'master' into gruntmaster X-Git-Url: http://git.ieval.ro/?p=gruntmaster-page.git;a=commitdiff_plain;h=4da2c0022f346a63f42336c32f38c300fb74e884;hp=bb6e0353c7fad00f925c538fbaca704066df5926 Merge branch 'master' into gruntmaster --- diff --git a/lib/Gruntmaster/Page/Ct.pm b/lib/Gruntmaster/Page/Ct.pm index b62b975..a21bf77 100644 --- a/lib/Gruntmaster/Page/Ct.pm +++ b/lib/Gruntmaster/Page/Ct.pm @@ -12,7 +12,7 @@ sub _generate{ debug $env => "language is '$lang'"; my (@running, @pending, @finished); - for (contests) { + for (sort {contest_start $a <=> contest_start $b}contests) { my $ct = { id => $_, name => contest_name, start => strftime ('%c', localtime contest_start), diff --git a/lib/Gruntmaster/Page/Pb/Entry.pm b/lib/Gruntmaster/Page/Pb/Entry.pm index 8b770ef..4cf007e 100644 --- a/lib/Gruntmaster/Page/Pb/Entry.pm +++ b/lib/Gruntmaster/Page/Pb/Entry.pm @@ -13,7 +13,7 @@ sub _generate{ my ($self, $htc, $lang, $env, $contest, $id) = @_; debug $env => "language is '$lang', contest is '$contest', id is '$id'"; my $user = $env->{REMOTE_USER}; - if ($contest && $user) { + if ($contest && $user && time >= contest_start $contest) { local $Gruntmaster::Data::contest = $contest; mark_open $id, $user; debug $env => "Marking problem $id of contest $contest open by $user"; diff --git a/lib/Gruntmaster/Page/St.pm b/lib/Gruntmaster/Page/St.pm index 2186fea..6486136 100644 --- a/lib/Gruntmaster/Page/St.pm +++ b/lib/Gruntmaster/Page/St.pm @@ -44,8 +44,7 @@ sub _generate{ my (%scores, %tries); for (1 .. jobcard) { if ($Gruntmaster::Data::contest) { - $tries{job_user()}{job_problem()}++; - $scores{job_user()}{job_problem()} = job_result() ? 0 : calc_score (job_user(), job_problem(), job_date(), $tries{job_user()}{job_problem()}, $totaltime) if job_date() > $start; + $scores{job_user()}{job_problem()} = job_result() ? 0 : calc_score (job_user(), job_problem(), job_date(), $tries{job_user()}{job_problem()}++, $totaltime) if job_date() > $start; } elsif (defined job_user && defined job_problem && defined job_result) { if (defined job_result_text && job_result_text =~ m/^(\scores+)/) { $scores{job_user()}{job_problem()} = $ct;