function vpl_user_complete($course, $user, $mod, $vpl) { require_once 'vpl_submission.class.php'; //TODO Print a detailed report of what a user has done with a given particular instance //Search submisions for $user $instance $vpl = new mod_vpl(null, $vpl->id); $sub = $vpl->last_user_submission($user->id); if (!$sub) { $return = null; } else { $submission = new mod_vpl_submission($vpl, $sub); $submission->print_info(true); $submission->print_grade(true); } return true; }
//Print header $PAGE->requires->css(new moodle_url('/mod/vpl/css/sh.css')); $PAGE->requires->css(new moodle_url('/mod/vpl/editor/VPLIDE.css')); $vpl->print_header(get_string('submissionview', VPL)); $vpl->print_view_tabs(basename(__FILE__)); //Display submission //Check consistence if (!$subinstance) { notice(get_string('nosubmission', VPL), vpl_mod_href('view.php', 'id', $id, 'userid', $userid)); } $submissionid = $subinstance->id; if ($vpl->is_inconsistent_user($subinstance->userid, $userid)) { print_error('vpl submission user inconsistence'); } if ($vpl->get_instance()->id != $subinstance->vpl) { print_error('vpl submission vpl inconsistence'); } $submission = new mod_vpl_submission($vpl, $subinstance); if ($vpl->get_visiblegrade() || $vpl->has_capability(VPL_GRADE_CAPABILITY)) { if ($submission->is_graded()) { echo '<h2>' . get_string('grade') . '</h2>'; $submission->print_grade(true); } } $vpl->print_variation($subinstance->userid); $submission->print_submission(); $vpl->print_footer(); \mod_vpl\event\submission_viewed::log($submission); } catch (Exception $e) { print_r($e); }