Example #1
0
 /**
  *
  */
 protected function definition_grading()
 {
     global $CFG;
     $dataformid = !empty($this->current->id) ? $this->current->id : 0;
     $mform =& $this->_form;
     $displaymultilink = false;
     if ($CFG->dataform_multigradeitems) {
         if ($dataformid) {
             $gitems = grade_item::fetch_all(array('itemtype' => 'mod', 'itemmodule' => 'dataform', 'iteminstance' => $dataformid, 'courseid' => $this->current->course));
             if ($gitems and count($gitems) > 1) {
                 $displaymultilink = true;
             }
         }
     }
     if ($displaymultilink) {
         $mform->addElement('header', 'modstandardgrade', get_string('grade'));
         $urlparams = array('id' => $this->current->update);
         $url = new \moodle_url('/mod/dataform/grade/items.php', $urlparams);
         $label = get_string('usegradeitemsform', 'mod_dataform', $url->out(false));
         $mform->addElement('html', $label);
     } else {
         $this->standard_grading_coursemodule_elements();
         $mform->setDefault('grade', 0);
         $grademan = new \mod_dataform_grade_manager($dataformid);
         // Grading rubric/guide.
         $gradeguide = null;
         if ($grademan->get_form_definition_grading_areas($mform, 'gradeguide', 'gradecalc')) {
             $gradeguide = 'gradeguide';
             $mform->disabledIf('gradeguide', 'grade[modgrade_type]', 'eq', 'none');
         }
         // Grading formula.
         $grademan->get_form_definition_grading_calc($mform, 'gradecalc', $gradeguide);
         $mform->disabledIf('gradecalc', 'grade[modgrade_type]', 'eq', 'none');
     }
 }