$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));
        }
    }
}
if (has_capability('mod/workshopplus:viewallassessments', $workshopplus->context) or $ownsubmission and $workshopplus->assessments_available()) {
    // other assessments
    $strategy = $workshopplus->grading_strategy_instance();
    $assessments = $workshopplus->get_assessments_of_submission($submission->id);
    $showreviewer = has_capability('mod/workshopplus:viewreviewernames', $workshopplus->context);
    foreach ($assessments as $assessment) {
        if ($assessment->reviewerid == $USER->id) {
            // own assessment has been displayed already
            continue;
        }
        if (is_null($assessment->grade) and !has_capability('mod/workshopplus:viewallassessments', $workshopplus->context)) {
            // students do not see peer-assessment that are not graded yet
            continue;
        }
        $mform = $strategy->get_assessment_form($PAGE->url, 'assessment', $assessment, false);
        $options = array('showreviewer' => $showreviewer, 'showauthor' => $showauthor, 'showform' => !is_null($assessment->grade), 'showweight' => true);