예제 #1
0
    public function update_session_from_form_data($formdata, $sessionid) {
        global $DB;

        if (!$sess = $DB->get_record('attendance_sessions', array('id' => $sessionid) )) {
            print_error('No such session in this course');
        }

        $sess->sessdate = $formdata->sessiondate;
        $sess->duration = $formdata->durtime['hours']*HOURSECS + $formdata->durtime['minutes']*MINSECS;
        $description = file_save_draft_area_files($formdata->sdescription['itemid'],
                                $this->context->id, 'mod_attendance', 'session', $sessionid,
                                array('subdirs' => false, 'maxfiles' => -1, 'maxbytes' => 0), $formdata->sdescription['text']);
        $sess->description = $description;
        $sess->descriptionformat = $formdata->sdescription['format'];
        $sess->timemodified = time();
        $DB->update_record('attendance_sessions', $sess);

        $url = $this->url_sessions(array('sessionid' => $sessionid, 'action' => att_local_sessions_page_params::ACTION_UPDATE));
        $info = construct_session_full_date_time($sess->sessdate, $sess->duration);
        add_to_log($this->course->id, 'attendance', 'session updated', $url, $info, $this->cm->id);
    }
 public function update_session_from_form_data($formdata, $sessionid)
 {
     global $DB;
     if (!($sess = $DB->get_record('attendance_sessions', array('id' => $sessionid)))) {
         print_error('No such session in this course');
     }
     $sess->sessdate = $formdata->sessiondate;
     $sess->duration = $formdata->durtime['hours'] * HOURSECS + $formdata->durtime['minutes'] * MINSECS;
     $description = file_save_draft_area_files($formdata->sdescription['itemid'], $this->context->id, 'mod_attendance', 'session', $sessionid, array('subdirs' => false, 'maxfiles' => -1, 'maxbytes' => 0), $formdata->sdescription['text']);
     $sess->description = $description;
     $sess->descriptionformat = $formdata->sdescription['format'];
     $sess->timemodified = time();
     $DB->update_record('attendance_sessions', $sess);
     $info = construct_session_full_date_time($sess->sessdate, $sess->duration);
     $event = \mod_attendance\event\session_updated::create(array('objectid' => $this->id, 'context' => $this->context, 'other' => array('info' => $info, 'sessionid' => $sessionid, 'action' => att_sessions_page_params::ACTION_UPDATE)));
     $event->add_record_snapshot('course_modules', $this->cm);
     $event->add_record_snapshot('attendance_sessions', $sess);
     $event->trigger();
 }
예제 #3
0
 /**
  * Updates a session
  * @param $formdata information from the form to be updated
  * @param $sessionid session id
  */
 public function update_session_from_form_data($formdata, $sessionid)
 {
     global $DB;
     if (!($sess = $DB->get_record('attcontrol_sessions', array('id' => $sessionid)))) {
         print_error('No such session in this course');
     }
     $sess->sessdate = $formdata->sessiondate;
     $sess->duration = $formdata->durtime['hours'] * HOURSECS + $formdata->durtime['minutes'] * MINSECS;
     $sess->description = $formdata->description;
     $sess->timemodified = time();
     $DB->update_record('attcontrol_sessions', $sess);
     $url = $this->url_sessions(array('sessionid' => $sessionid, 'action' => att_sessions_page_params::ACTION_UPDATE));
     $info = construct_session_full_date_time($sess->sessdate, $sess->duration);
     add_to_log($this->course->id, 'attcontrol', 'session updated', $url, $info, $this->cm->id);
 }