if ($submission->id and !$edit and !$isreviewer and $canallocate and $workshopplus->assessing_allowed($USER->id)) {
    $url = new moodle_url($PAGE->url, array('assess' => 1));
    echo $output->single_button($url, get_string('assess', 'workshopplus'), 'post');
}
if ($workshopplus->phase == workshopplus::PHASE_CLOSED and ($ownsubmission or $canviewall)) {
    if (!empty($submission->gradeoverby) and strlen(trim($submission->feedbackauthor)) > 0) {
        echo $output->render(new workshopplus_feedback_author($submission));
    }
}
// and possibly display the submission's review(s)
if ($isreviewer) {
    // user's own assessment
    $strategy = $workshopplus->grading_strategy_instance();
    $mform = $strategy->get_assessment_form($PAGE->url, 'assessment', $userassessment, false);
    $options = array('showreviewer' => true, 'showauthor' => $showauthor, 'showform' => !is_null($userassessment->grade), 'showweight' => true);
    $assessment = $workshopplus->prepare_assessment($userassessment, $mform, $options);
    $assessment->title = get_string('assessmentbyyourself', 'workshopplus');
    if ($workshopplus->assessing_allowed($USER->id)) {
        if (is_null($userassessment->grade)) {
            $assessment->add_action($workshopplus->assess_url($assessment->id), get_string('assess', 'workshopplus'));
        } else {
            $assessment->add_action($workshopplus->assess_url($assessment->id), get_string('reassess', 'workshopplus'));
        }
    }
    if ($canoverride) {
        $assessment->add_action($workshopplus->assess_url($assessment->id), get_string('assessmentsettings', 'workshopplus'));
    }
    echo $output->render($assessment);
    if ($workshopplus->phase == workshopplus::PHASE_CLOSED) {
        if (strlen(trim($userassessment->feedbackreviewer)) > 0) {
            echo $output->render(new workshopplus_feedback_reviewer($userassessment));
// workshopplus renderer
echo $output->header();
echo $output->heading(format_string($workshopplus->name));
echo $output->heading(get_string('assessedsubmission', 'workshopplus'), 3);
$submission = $workshopplus->get_submission_by_id($submission->id);
// reload so can be passed to the renderer
echo $output->render($workshopplus->prepare_submission($submission, has_capability('mod/workshopplus:viewauthornames', $workshopplus->context)));
// show instructions for assessing as they may contain important information
// for evaluating the assessment
if (trim($workshopplus->instructreviewers)) {
    $instructions = file_rewrite_pluginfile_urls($workshopplus->instructreviewers, 'pluginfile.php', $PAGE->context->id, 'mod_workshopplus', 'instructreviewers', 0, workshopplus::instruction_editors_options($PAGE->context));
    print_collapsible_region_start('', 'workshopplus-viewlet-instructreviewers', get_string('instructreviewers', 'workshopplus'));
    echo $output->box(format_text($instructions, $workshopplus->instructreviewersformat, array('overflowdiv' => true)), array('generalbox', 'instructions'));
    print_collapsible_region_end();
}
// extend the current assessment record with user details
$assessment = $workshopplus->get_assessment_by_id($assessment->id);
if ($isreviewer) {
    $options = array('showreviewer' => true, 'showauthor' => has_capability('mod/workshopplus:viewauthornames', $workshopplus->context), 'showform' => $assessmenteditable or !is_null($assessment->grade), 'showweight' => true);
    $assessment = $workshopplus->prepare_assessment($assessment, $mform, $options);
    $assessment->title = get_string('assessmentbyyourself', 'workshopplus');
    echo $output->render($assessment);
} else {
    $options = array('showreviewer' => has_capability('mod/workshopplus:viewreviewernames', $workshopplus->context), 'showauthor' => has_capability('mod/workshopplus:viewauthornames', $workshopplus->context), 'showform' => $assessmenteditable or !is_null($assessment->grade), 'showweight' => true);
    $assessment = $workshopplus->prepare_assessment($assessment, $mform, $options);
    echo $output->render($assessment);
}
if (!$assessmenteditable and $canoverridegrades) {
    $feedbackform->display();
}
echo $output->footer();