MDL-52954 assign: Rebuild the assignment single grade page.

This commit is contained in:
Damyon Wiese 2016-02-01 16:13:46 +08:00
parent 2a3647bae5
commit bb690849c9
86 changed files with 4593 additions and 279 deletions

View file

@ -1474,3 +1474,36 @@ function assign_pluginfile($course,
}
send_stored_file($file, 0, 0, $forcedownload, $options);
}
/**
* Serve the grading panel as a fragment.
*
* @param array $args List of named arguments for the fragment loader.
* @return string
*/
function mod_assign_output_fragment_gradingpanel($args) {
global $CFG;
$context = $args['context'];
if ($context->contextlevel != CONTEXT_MODULE) {
return null;
}
require_once($CFG->dirroot . '/mod/assign/locallib.php');
$assign = new assign($context, null, null);
$userid = clean_param($args['userid'], PARAM_INT);
$attemptnumber = clean_param($args['attemptnumber'], PARAM_INT);
$formdata = array();
if (!empty($args['jsonformdata'])) {
$serialiseddata = json_decode($args['jsonformdata']);
parse_str($serialiseddata, $formdata);
}
$viewargs = array(
'userid' => $userid,
'attemptnumber' => $attemptnumber,
'formdata' => $formdata
);
return $assign->view('gradingpanel', $viewargs);
}