aboutsummaryrefslogtreecommitdiff
path: root/src/frun.php
diff options
context:
space:
mode:
Diffstat (limited to 'src/frun.php')
-rw-r--r--src/frun.php22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/frun.php b/src/frun.php
index a2efb73..bbb20e9 100644
--- a/src/frun.php
+++ b/src/frun.php
@@ -166,9 +166,10 @@ function DBUpdateRunC($contest, $usersite, $usernumber, $runsite, $runnumber, $a
if($chief == 1 || ($outra != 0 && $outra == $answer && $temp["runstatus"] != "judged+") ||
($outra != 0 && $outra == $answer && $temp["runanswer"]==$answer)) {
$newstatus = 'judged';
+ $tans = max($t,$temp['rundatediff']);
DBExec($c, "update runtable set runstatus='judged', " .
"runjudge=$usernumber, runjudgesite=$usersite, " .
- "runanswer=$answer, rundatediffans=$t, updatetime=".time()." " .
+ "runanswer=$answer, rundatediffans=$tans, updatetime=".time()." " .
"where contestnumber=$contest and runnumber=$runnumber and runsitenumber=$runsite",
"DBUpdateRunC(update run)");
@@ -359,13 +360,14 @@ function DBGetRunToAnswerC($number,$site,$contest,$chief) {
"r.runnumber=$number";
if ($chief != 1) {
$sql .= " and (r.runstatus='openrun' or " .
- "(r.runstatus='judged+' and r.runjudge is NULL) or " .
- "((r.runstatus='judging' or r.runstatus='judged+') and " .
- " (r.runjudge1 is null or r.runjudge2 is null or " .
- " ((r.runjudge1=" . $_SESSION["usertable"]["usernumber"] . " and " .
- " r.runjudgesite1=" . $_SESSION["usertable"]["usersitenumber"] . ") or " .
- " (r.runjudge2=" . $_SESSION["usertable"]["usernumber"] . " and " .
- " r.runjudgesite2=" . $_SESSION["usertable"]["usersitenumber"] . ")))))";
+ "(r.runstatus='judged+' and r.runjudge is NULL) or " .
+ "((r.runstatus='judging' or r.runstatus='judged+') and " .
+ " (r.runjudge1 is null or " .
+ " (r.runjudge2 is null)" . // " and (" . $_SESSION["usertable"]["usernumber"] . ">=120000 or r.runjudge1>=120000))" .
+ " or ((r.runjudge1=" . $_SESSION["usertable"]["usernumber"] . " and " .
+ " r.runjudgesite1=" . $_SESSION["usertable"]["usersitenumber"] . ") or " .
+ " (r.runjudge2=" . $_SESSION["usertable"]["usernumber"] . " and " .
+ " r.runjudgesite2=" . $_SESSION["usertable"]["usersitenumber"] . ")))))";
$tx = "Judge";
} else $tx = "Chief";
$r = DBExec ($c, $sql . " for update", "DBGetRunToAnswerC(get run/prob/lang for update)");
@@ -505,8 +507,8 @@ function DBUpdateRunAutojudging($contest, $site, $number, $ip, $answer, $stdout,
DBExec($c, "commit work", "DBUpdateRunAutojudging(commit)");
LOGLevel("Autojudging answered a run (run=$number, site=$site, contest=$contest, answer='$answer', retval=$retval)", 3);
return true;
- //}
- }
+ }
+ //}
}
//echo "DEBUG: $contest, $site, " .$a["usernumber"].", $site, $number, $retval\n";
if(DBUpdateRunO($contest, $site, $a["usernumber"], $site, $number, $retval, $c)==false) {