function __construct() { Authentication::require_admin(); $this->is_admin_page = true; // find submission if (!isset($_REQUEST['submissionid'])) { throw new NotFoundException("Missing parameter: submissionid"); } $this->subm = Submission::by_id(intval($_REQUEST['submissionid'])); $this->entity = $this->subm->entity(); // rejudge? if (isset($_REQUEST['rejudge'])) { $this->subm->rejudge(); // redirect to this page, so a refresh doesn't rejudge again Util::redirect('admin_view_submission.php?submissionid=' . $_REQUEST['submissionid']); } // delete? if (isset($_REQUEST['delete'], $_POST['confirm']) && $_POST['confirm'] == sha1('confirmed' . $this->subm->submissionid)) { $this->subm->delete(); Util::redirect('index.php' . $this->entity->path()); } }
require_once '../lib/bootstrap.inc'; require_once '../lib/DateRange.php'; // ----------------------------------------------------------------------------- // Judge a single submission // ----------------------------------------------------------------------------- if (!isset($_SERVER['argv'])) { die("This program must be started from the console."); } if (count($_SERVER['argv']) < 2) { die("Usage: try_to_judge_submission <SUBMISSIONID>.\n\n" . "For debug purposes, try to judge a submission and don't discard the temporary files.\n"); } else { $submissionid = $_SERVER['argv'][1]; } try { // Retrieve the submission $subm = Submission::by_id($submissionid); // Some information on this submission echo "\n"; echo "Submission id: ", $subm->submissionid, "\n"; echo "Submission to: ", $subm->entity_path, "\n"; echo "Submited on: ", format_date($subm->time), "\n"; echo "Submission by: ", User::names_text($subm->users()), "\n"; // this slows things down echo "\n"; // Let's judge it try { $judgement = new SubmissionJudgement($subm); $judgement->judge(false); } catch (Exception $e) { echo "Error during judging!\n", $e; }