diff options
| -rw-r--r-- | src/fclar.php | 17 | ||||
| -rw-r--r-- | src/fextdata.php | 8 |
2 files changed, 16 insertions, 9 deletions
diff --git a/src/fclar.php b/src/fclar.php index 4555e07..c8d9ad3 100644 --- a/src/fclar.php +++ b/src/fclar.php @@ -149,6 +149,7 @@ function DBUpdateClarC($contest, $usersite, $usernumber, $clarsite, $clarnumber, MSGError("Unable to answer the clarification (maybe it was already answered or catched by a chief)"); return false; } + $theclar = DBRow($r,0); if ($type=="all") $status="answeredall"; else if ($type=="site") $status="answeredsite"; @@ -157,10 +158,18 @@ function DBUpdateClarC($contest, $usersite, $usernumber, $clarsite, $clarnumber, $time = time(); $t = $b["currenttime"]; - DBExec($c, "update clartable set clarstatus='$status', clarjudge=$usernumber, clarjudgesite=$usersite, " . - "claranswer='$answer', clardatediffans=$t, updatetime=".time()." " . - "where contestnumber=$contest and clarnumber=$clarnumber and clarsitenumber=$clarsite", - "DBUpdateClarC(update clar)"); + LOGInfo("CLAR number $clarnumber site $clarsite contest $contest: user " . $theclar['usernumber'] . " replaced"); + if($type=="all") { + DBExec($c, "update clartable set clarstatus='$status', clarjudge=$usernumber, clarjudgesite=$usersite, " . + "clarsitenumber=$usersite, usernumber=$usernumber, " . + "claranswer='$answer', clardatediffans=$t, updatetime=".time()." " . + "where contestnumber=$contest and clarnumber=$clarnumber and clarsitenumber=$clarsite", + "DBUpdateClarC(update clar)"); + } else + DBExec($c, "update clartable set clarstatus='$status', clarjudge=$usernumber, clarjudgesite=$usersite, " . + "claranswer='$answer', clardatediffans=$t, updatetime=".time()." " . + "where contestnumber=$contest and clarnumber=$clarnumber and clarsitenumber=$clarsite", + "DBUpdateClarC(update clar)"); DBExec($c, "commit work", "DBUpdateClarC(commit)"); LOGLevel("Clarification updated (clar=$clarnumber, site=$clarsite, contest=$contest, status=$status, " . diff --git a/src/fextdata.php b/src/fextdata.php index ca66a45..ce23299 100644 --- a/src/fextdata.php +++ b/src/fextdata.php @@ -558,8 +558,7 @@ function importFromXML($ar,$contest,$site,$tomain=false,$uptime=0,$mainsite=-1) if(isset($param['usersitenumber']) && !isset($param['sitenumber'])) $param['sitenumber']=$param['usersitenumber']; if(isset($param['clarsitenumber']) && !isset($param['sitenumber'])) $param['sitenumber']=$param['clarsitenumber']; if(isset($param['runsitenumber']) && !isset($param['sitenumber'])) $param['sitenumber']=$param['runsitenumber']; - if(!isset($param['sitenumber']) || ($param['sitenumber'] != $site && ($param['sitenumber'] != $mainsite || $tomain) && - ($table != 'clartable' || $tomain))) { + if(!isset($param['sitenumber']) || ($param['sitenumber'] != $site && ($param['sitenumber'] != $mainsite || $tomain))) { $logstr .= "$serv - site mismatch should be [$site] and is [" . $param['sitenumber'] . "]\n"; LOGError("importFromXML: site mismatch should be [$site] and is [" . $param['sitenumber'] . "]"); continue; @@ -703,9 +702,8 @@ function genSQLs($contest, $site, $updatetime, $mainsite=1) { //"problemcolor, " . "updatetime" . " from problemtable where contestnumber=$contest and fake='f' and updatetime >= $updatetime"; - $sql['usertable']="select * from usertable where contestnumber=$contest and usersitenumber!=$site and updatetime >= $updatetime"; - } else - $sql['usertable']="select * from usertable where contestnumber=$contest and usersitenumber=$site and updatetime >= $updatetime"; + } + $sql['usertable']="select * from usertable where contestnumber=$contest and usersitenumber=$site and updatetime >= $updatetime"; $sql['sitetimetable']="select * from sitetimetable where contestnumber=$contest and sitenumber=$site and updatetime >= $updatetime"; $sql['clartable']="select * from clartable where contestnumber=$contest and updatetime >= $updatetime"; $sql['runtable']="select * from runtable where contestnumber=$contest and runsitenumber=$site and updatetime >= $updatetime"; |