コード例 #1
0
        require_login($course);
        $context = get_context_instance(CONTEXT_COURSE, $course->id);
        require_capability('moodle/grade:manage', $context);
    } else {
        /// adding new outcome from admin section
        $outcome_rec = new object();
        $outcome_rec->standard = 1;
        $outcome_rec->courseid = 0;
        require_login();
        require_capability('moodle/grade:manage', $systemcontext);
    }
}
// default return url
$gpr = new grade_plugin_return();
$returnurl = $gpr->get_return_url('index.php?id=' . $courseid);
$mform = new edit_outcome_form(null, array('gpr' => $gpr));
$mform->set_data($outcome_rec);
if ($mform->is_cancelled()) {
    redirect($returnurl);
} else {
    if ($data = $mform->get_data(false)) {
        $outcome = new grade_outcome(array('id' => $id));
        $data->usermodified = $USER->id;
        grade_outcome::set_properties($outcome, $data);
        if (empty($outcome->id)) {
            if (!has_capability('moodle/grade:manage', $systemcontext)) {
                $data->standard = 0;
            }
            $outcome->courseid = !empty($data->standard) ? null : $courseid;
            if (empty($outcome->courseid)) {
                $outcome->courseid = null;