break; case 'finishmarking': emarking_check_grade_permission($readonly, $draft, $context); // Add to Moodle log so some auditing can be done. \mod_emarking\event\emarking_published::create_from_draft($draft, $submission, $context)->trigger(); $results = emarking_get_rubric_submission($submission, $draft, $cm, $readonly, $issupervisor); $output = emarking_finish_marking($emarking, $submission, $draft, $user, $context, $cm, $issupervisor); emarking_json_array($output); break; case 'getalltabs': if ($ownsubmission) { $submission->seenbystudent = 1; $submission->timemodified = time(); $DB->update_record('emarking_submission', $submission); } $alltabs = emarking_get_all_pages($emarking, $submission, $draft, $studentanonymous, $context); emarking_json_resultset($alltabs); break; case 'getnextsubmission': $nextsubmission = emarking_get_next_submission($emarking, $draft, $context, $user, $issupervisor); emarking_json_array(array('nextsubmission' => $nextsubmission)); break; case 'setanswerkey': $status = required_param('status', PARAM_INT); $newvalue = emarking_set_answer_key($submission, $status); emarking_json_array(array('newvalue' => $newvalue)); break; case 'getmoodleresources': break; case 'getrubric': $results = emarking_get_rubric_submission($submission, $draft, $cm, $readonly, $issupervisor);
case 'rotatepage': if (!$issupervisor) { emarking_json_error('Invalid access'); } // Add to Moodle log so some auditing can be done $item = array('context' => context_module::instance($cm->id), 'objectid' => $cm->id); \mod_emarking\event\rotatepage_switched::create($item)->trigger(); list($imageurl, $anonymousurl, $imgwidth, $imgheight) = emarking_rotate_image($pageno, $submission, $context); if (strlen($imageurl) == 0) { emarking_json_error('Image is empty'); } $output = array('imageurl' => $imageurl, 'anonymousimageurl' => $anonymousurl, 'width' => $imgwidth, 'height' => $imgheight); emarking_json_array($output); break; case 'getalltabs': $resultset = emarking_get_all_pages($emarking, $submission, $anonymous, $context); emarking_json_resultset($resultset); break; case 'sortpages': // Add to Moodle log so some auditing can be done $item = array('context' => context_module::instance($cm->id), 'objectid' => $cm->id); \mod_emarking\event\sortpage_switched::create($item)->trigger(); $neworder = required_param('neworder', PARAM_SEQUENCE); $neworderarr = explode(',', $neworder); if (!emarking_sort_submission_pages($submission, $neworderarr)) { emarking_json_error('Error trying to resort pages!'); } $output = array('neworder' => $neworder); emarking_json_array($output); break; case 'prevcomments':