Exemple #1
0
            $message .= html_writer::empty_tag('br');
            $message .= $sessinfo->description;
        }
        $sessionsids = implode('_', $fromform->sessid);
        $params = array('action' => $att->pageparams->action, 'sessionsids' => $sessionsids, 'confirm' => 1);
        echo $OUTPUT->header();
        echo $OUTPUT->heading(get_string('attendanceforthecourse', 'attforblock') . ' :: ' . $course->fullname);
        echo $OUTPUT->confirm($message, $att->url_sessions($params), $att->url_manage());
        echo $OUTPUT->footer();
        exit;
    case att_sessions_page_params::ACTION_CHANGE_DURATION:
        $fromform = data_submitted();
        $slist = isset($fromform->sessid) ? implode('_', $fromform->sessid) : '';
        $url = $att->url_sessions(array('action' => att_sessions_page_params::ACTION_CHANGE_DURATION));
        $formparams['ids'] = $slist;
        $mform = new mod_attforblock_duration_form($url, $formparams);
        if ($mform->is_cancelled()) {
            redirect($att->url_manage());
        }
        if ($formdata = $mform->get_data()) {
            $sessionsids = explode('_', $fromform->ids);
            $duration = $formdata->durtime['hours'] * HOURSECS + $formdata->durtime['minutes'] * MINSECS;
            $att->update_sessions_duration($sessionsids, $duration);
            redirect($att->url_manage(), get_string('sessionupdated', 'attforblock'));
        }
        if ($slist === '') {
            print_error('nosessionsselected', 'attforblock', $att->url_manage());
        }
        break;
}
$output = $PAGE->get_renderer('mod_attforblock');
    $sessions = get_records_list('attendance_sessions', 'id', $slist, 'sessdate');
    print_heading(get_string('deletingsession', 'attforblock') . ' :: ' . $course->fullname);
    $message = '<br />';
    foreach ($sessions as $att) {
        $message .= '<br />' . userdate($att->sessdate, get_string('strftimedmyhm', 'attforblock')) . ': ' . ($att->description ? $att->description : get_string('nodescription', 'attforblock'));
    }
    $slist = implode('_', array_keys($fromform->sessid));
    notice_yesno(get_string('deletecheckfull', '', get_string('sessions', 'attforblock')) . $message, "sessions.php?id={$id}&amp;sessionid={$slist}&amp;action=deleteselected&amp;confirm=1", $_SERVER['HTTP_REFERER']);
}
//////////////////////////////////////////////////////////
// Change duration
//////////////////////////////////////////////////////////
if ($action === 'changeduration') {
    $fromform = data_submitted();
    $slist = isset($fromform->sessid) ? implode('_', array_keys($fromform->sessid)) : '';
    $mform_duration = new mod_attforblock_duration_form('sessions.php', array('course' => $course, 'ids' => $slist));
    if ($mform_duration->is_cancelled()) {
        redirect('manage.php?id=' . $id);
    }
    if ($fromform = $mform_duration->get_data()) {
        $now = time();
        $slist = implode(',', explode('_', $fromform->ids));
        if (!($sessions = get_records_list('attendance_sessions', 'id', $slist))) {
            error('No such session in this course');
        }
        foreach ($sessions as $sess) {
            $sess->duration = $fromform->durtime['hours'] * HOURSECS + $fromform->durtime['minutes'] * MINSECS;
            $sess->timemodified = $now;
            $startdate = $sess->sessdate;
            $duration = $fromform->durtime['hours'] * HOURSECS + $fromform->durtime['minutes'] * MINSECS;
            $sess->sessionend = $startdate + $duration;