Exemplo n.º 1
0
 /**
  * Submit the logged in users setaskment for grading.
  *
  * @param int $setaskmentid The id of the setaskment
  * @return array of warnings to indicate any errors.
  * @since Moodle 2.6
  */
 public static function submit_for_grading($setaskmentid, $acceptsubmissionstatement)
 {
     global $CFG, $USER;
     require_once "{$CFG->dirroot}/mod/setask/locallib.php";
     $params = self::validate_parameters(self::submit_for_grading_parameters(), array('setaskmentid' => $setaskmentid, 'acceptsubmissionstatement' => $acceptsubmissionstatement));
     $cm = get_coursemodule_from_instance('setask', $params['setaskmentid'], 0, false, MUST_EXIST);
     $context = context_module::instance($cm->id);
     self::validate_context($context);
     $setaskment = new setask($context, $cm, null);
     $warnings = array();
     $data = new stdClass();
     $data->submissionstatement = $params['acceptsubmissionstatement'];
     $notices = array();
     if (!$setaskment->submit_for_grading($data, $notices)) {
         $detail = 'User id: ' . $USER->id . ', Assignment id: ' . $params['setaskmentid'] . ' Notices:' . implode(', ', $notices);
         $warnings[] = self::generate_warning($params['setaskmentid'], 'couldnotsubmitforgrading', $detail);
     }
     return $warnings;
 }