$url = new moodle_url('/mod/attforblock/export.php'); if (!($cm = $DB->get_record("course_modules", array("id" => $id)))) { print_error("Course Module ID was incorrect"); } if (!($course = $DB->get_record("course", array("id" => $cm->course)))) { print_error("Course is misconfigured"); } if (!($attforblock = $DB->get_record('attforblock', array('id' => $cm->instance)))) { print_error("Course module is incorrect"); } $url->param($id); $PAGE->set_url($url); require_login($course->id); $context = get_context_instance(CONTEXT_MODULE, $cm->id); require_capability('mod/attforblock:export', $context); $mform_export = new mod_attforblock_export_form('export.php', array('course' => $course, 'cm' => $cm, 'modcontext' => $context)); if ($fromform = $mform_export->get_data()) { $group = groups_get_group($fromform->group); if ($group) { $sql = "SELECT u.*\n FROM {role_assignments} ra, {user} u, {course} c, {context} cxt\n WHERE ra.userid = u.id\n AND ra.contextid = cxt.id\n AND cxt.contextlevel = 50\n AND cxt.instanceid = c.id\n AND c.id = ?\n AND roleid =5\n AND u.id IN (SELECT userid FROM {groups_members} gm WHERE gm.groupid = ?)\n ORDER BY u.lastname ASC"; $params = array($cm->course, $group->id); $students = $DB->get_records_sql($sql, $params); //$students = get_users_by_capability($context, 'moodle/legacy:student', '', 'u.lastname ASC', '', '', $group->id, '', false); } else { $sql = "SELECT u.*\n FROM {role_assignments} ra, {user} u, {course} c, {context} cxt\n WHERE ra.userid = u.id\n AND ra.contextid = cxt.id\n AND cxt.contextlevel = 50\n AND cxt.instanceid = c.id\n AND c.id = ?\n AND roleid =5\n ORDER BY u.lastname ASC"; $params = array($cm->course); $students = $DB->get_records_sql($sql, $params); //$students = get_users_by_capability($context, 'moodle/legacy:student', '', 'u.lastname ASC', '', '', '', '', false); } if ($students) { $filename = clean_filename($course->shortname . '_Attendances_' . userdate(time(), '%Y%m%d-%H%M'));
require_once dirname(__FILE__) . '/renderhelpers.php'; $id = required_param('id', PARAM_INT); $cm = get_coursemodule_from_id('attforblock', $id, 0, false, MUST_EXIST); $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); $att = $DB->get_record('attforblock', array('id' => $cm->instance), '*', MUST_EXIST); require_login($course, true, $cm); $att = new attforblock($att, $cm, $course, $PAGE->context); $att->perm->require_export_capability(); $PAGE->set_url($att->url_export()); $PAGE->set_title($course->shortname . ": " . $att->name); $PAGE->set_heading($course->fullname); $PAGE->set_cacheable(true); $PAGE->set_button($OUTPUT->update_module_button($cm->id, 'attforblock')); $PAGE->navbar->add(get_string('export', 'quiz')); $formparams = array('course' => $course, 'cm' => $cm, 'modcontext' => $PAGE->context); $mform = new mod_attforblock_export_form($att->url_export(), $formparams); if ($mform->is_submitted()) { $formdata = $mform->get_data(); $pageparams = new att_page_with_filter_controls(); $pageparams->init($cm); $pageparams->group = $formdata->group; $pageparams->set_current_sesstype($formdata->group ? $formdata->group : att_page_with_filter_controls::SESSTYPE_ALL); if (isset($formdata->includeallsessions)) { if (isset($formdata->includenottaken)) { $pageparams->view = ATT_VIEW_ALL; } else { $pageparams->view = ATT_VIEW_ALLPAST; $pageparams->curdate = time(); } $pageparams->init_start_end_date(); } else {