def rejudge(params, setHeader, user): id = params["id"] submission = Submission.get(id) if os.path.exists(f"/tmp/{id}"): shutil.rmtree(f"/tmp/{id}") runCode(submission) return submission.result
def rejudge(params, setHeader, user): id = params["id"] submission = Submission.get(id) if os.path.exists(f"/tmp/{id}"): shutil.rmtree(f"/tmp/{id}") runCode(submission) return submission.result
def changeResult(params, setHeader, user): id = params["id"] sub = Submission.get(id) if not sub: return "Error: incorrect id" sub.result = params["result"] sub.save() return "ok"
def changeResult(params, setHeader, user): id = params["id"] sub = Submission.get(id) if not sub: return "Error: incorrect id" sub.result = params["result"] sub.save() return "ok"
def download(params, setHeader, user): id = params["id"] submission = Submission.get(id) files = [(f"submission.{exts[submission.language]}", submission.code)] for i in range(len(submission.inputs)): files.append((f"test{i}.txt", submission.inputs[i])) # send the json data return json.dumps(files)
def changeResult(params, setHeader, user): version = int(params["version"]) id = params["id"] sub = Submission.get(id) contestDict = sub.problem.contests[Contest.getCurrent().id] scoreChange = -1 if params["result"] != "ok" else 1 if (sub.user.id in contestDict["completed"] and scoreChange == -1) or ( sub.user.id not in contestDict["completed"] and scoreChange == 1): if scoreChange == -1: contestDict["completed"].remove(sub.user.id) else: contestDict["completed"].append(sub.user.id) if sub.language == 'c': contestDict['c'] += scoreChange elif sub.language == 'cpp': contestDict['cpp'] += scoreChange elif sub.language == 'cs': contestDict['cs'] += scoreChange elif sub.language == 'java': contestDict['java'] += scoreChange elif sub.language == 'python2': contestDict['python2'] += scoreChange elif sub.language == 'python3': contestDict['python3'] += scoreChange elif sub.language == 'ruby': contestDict['ruby'] += scoreChange elif sub.language == 'vb': contestDict['vb'] += scoreChange if not sub: return "Error: incorrect id" elif sub.version != version: return "The submission has been changed by another judge since you loaded it. Please reload the sumbission to modify it." sub.result = params["result"] sub.status = params["status"] sub.version += 1 sub.checkout = None sub.save() return "ok"
def judge_submission_close(params, setHeader, user): submission = Submission.get(params["id"]) if submission.version == int(params["version"]): submission.checkout = None submission.save() return "ok"
def judge_submission(params, user): submission = Submission.get(params[0]) force = params[1] == "force" if submission.checkout is not None and not force: return f"CONFLICT:{User.get(submission.checkout).username}" return SubmissionCard(submission, user, force)
def judge_submission(params, user): return SubmissionCard(Submission.get(params[0]))
def contestant_submission(params, user): return SubmissionCard(Submission.get(params[0]))
def judge_submission(params, user): return SubmissionCard(Submission.get(params[0]))