$from = optional_param('from', null, PARAM_ACTION); $pageparams->view = optional_param('view', null, PARAM_INT); $pageparams->curdate = optional_param('curdate', null, PARAM_INT); $pageparams->student = optional_param('student', null, PARAM_INT); $pageparams->sort = optional_param('sort', null, PARAM_INT); $pageparams->coursefilter = optional_param('coursefilter', null, PARAM_INT); $pageparams->studentfilter = optional_param('studentfilter', null, PARAM_INT); $pageparams->action = optional_param('action', null, PARAM_INT); $cm = get_coursemodule_from_id('attcontrol', $id, 0, false, MUST_EXIST); $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); $att = $DB->get_record('attcontrol', array('id' => $cm->instance), '*', MUST_EXIST); require_login($course, true, $cm); //Defines whether the student view or the teacher view is displayed $nostudent = $pageparams->student == null; $pageparams->init($cm); $att = new attcontrol($att, $cm, $course, $PAGE->context, $pageparams); //Prepare the student or teacher view. if (!$att->perm->can_view_reports() && $nostudent) { $att->pageparams->student = $USER->id; } if ($USER->id == $att->pageparams->student) { $att->perm->require_view_capability(); $own = true; } else { $att->perm->require_view_reports_capability(); $own = false; } $PAGE->set_url($att->url_individualreport()); $PAGE->set_pagelayout('report'); $PAGE->set_title($course->shortname . ": " . $att->name . ' - ' . get_string('individualreport', 'attcontrol')); $PAGE->set_heading($course->fullname);
/** * @param array $params * @return moodle_url */ public function url($params = array()) { $params = array_merge($this->pageparams->get_significant_params(), $params); return $this->att->url_individualreport($params); }
* * @package mod_attcontrol * @copyright 2013 José Luis Antúnez <*****@*****.**> * @copyright 2011 Artem Andreev <*****@*****.**> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require_once dirname(__FILE__) . '/../../config.php'; require_once dirname(__FILE__) . '/locallib.php'; require_once dirname(__FILE__) . '/individualexportform.php'; require_once dirname(__FILE__) . '/renderables.php'; $id = required_param('id', PARAM_INT); $cm = get_coursemodule_from_id('attcontrol', $id, 0, false, MUST_EXIST); $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); $att = $DB->get_record('attcontrol', array('id' => $cm->instance), '*', MUST_EXIST); require_login($course, true, $cm); $att = new attcontrol($att, $cm, $course, $PAGE->context); $att->perm->require_export_capability(); $PAGE->set_url($att->url_individualexport()); $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, 'attcontrol')); $PAGE->navbar->add(get_string('export', 'attcontrol')); $formparams = array('course' => $course, 'cm' => $cm, 'modcontext' => $PAGE->context); $mform = new mod_attcontrol_individualexportform($att->url_individualexport(), $formparams); if ($mform->is_submitted()) { $formdata = $mform->get_data(); $pageparams = new att_page_with_filter_controls(); $pageparams->init($cm); if (isset($formdata->includeallsessions)) { if (isset($formdata->includenottaken)) {
* @package mod_attcontrol * @copyright 2013 José Luis Antúnez<*****@*****.**> * @copyright 2011 Artem Andreev <*****@*****.**> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require_once dirname(__FILE__) . '/../../config.php'; require_once dirname(__FILE__) . '/locallib.php'; require_once dirname(__FILE__) . '/export_form.php'; require_once dirname(__FILE__) . '/renderables.php'; require_once dirname(__FILE__) . '/renderhelpers.php'; $id = required_param('id', PARAM_INT); $cm = get_coursemodule_from_id('attcontrol', $id, 0, false, MUST_EXIST); $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); $att = $DB->get_record('attcontrol', array('id' => $cm->instance), '*', MUST_EXIST); require_login($course, true, $cm); $att = new attcontrol($att, $cm, $course, $PAGE->context); $att->perm->require_export_capability(); $PAGE->set_url($att->url_export()); //Changed page heading $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, 'attcontrol')); $PAGE->navbar->add(get_string('export', 'quiz')); $formparams = array('course' => $course, 'cm' => $cm, 'modcontext' => $PAGE->context); $mform = new mod_attcontrol_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;
require_once dirname(__FILE__) . '/locallib.php'; $pageparams = new att_take_page_params(); $id = required_param('id', PARAM_INT); $pageparams->sessionid = required_param('sessionid', PARAM_INT); $pageparams->grouptype = required_param('grouptype', PARAM_INT); $pageparams->sort = optional_param('sort', null, PARAM_INT); $pageparams->copyfrom = optional_param('copyfrom', null, PARAM_INT); $pageparams->viewmode = optional_param('viewmode', null, PARAM_INT); $pageparams->gridcols = optional_param('gridcols', null, PARAM_INT); $cm = get_coursemodule_from_id('attcontrol', $id, 0, false, MUST_EXIST); $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); $att = $DB->get_record('attcontrol', array('id' => $cm->instance), '*', MUST_EXIST); require_login($course, true, $cm); $pageparams->group = groups_get_activity_group($cm, true); $pageparams->init($course->id); $att = new attcontrol($att, $cm, $course, $PAGE->context, $pageparams); if (!$att->perm->can_take_session($pageparams->grouptype)) { $group = groups_get_group($pageparams->grouptype); throw new moodle_exception('cannottakeforgroup', 'attcontrol', '', $group->name); } if (($formdata = data_submitted()) && confirm_sesskey()) { $att->take_from_form_data($formdata); } $PAGE->set_url($att->url_take()); $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, 'attcontrol')); $PAGE->navbar->add($att->name); $output = $PAGE->get_renderer('mod_attcontrol'); $tabs = new attcontrol_tabs($att);
* @copyright 2011 Artem Andreev <*****@*****.**> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require_once dirname(__FILE__) . '/../../config.php'; require_once dirname(__FILE__) . '/locallib.php'; require_once dirname(__FILE__) . '/add_form.php'; require_once dirname(__FILE__) . '/update_form.php'; require_once dirname(__FILE__) . '/duration_form.php'; $pageparams = new att_sessions_page_params(); $id = required_param('id', PARAM_INT); $pageparams->action = required_param('action', PARAM_INT); $cm = get_coursemodule_from_id('attcontrol', $id, 0, false, MUST_EXIST); $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); $att = $DB->get_record('attcontrol', array('id' => $cm->instance), '*', MUST_EXIST); require_login($course, true, $cm); $att = new attcontrol($att, $cm, $course, $PAGE->context, $pageparams); $att->perm->require_manage_capability(); $PAGE->set_url($att->url_sessions()); $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, 'attcontrol')); $PAGE->navbar->add($att->name); $formparams = array('course' => $course, 'cm' => $cm, 'modcontext' => $PAGE->context); switch ($att->pageparams->action) { case att_sessions_page_params::ACTION_ADD: $url = $att->url_sessions(array('action' => att_sessions_page_params::ACTION_ADD)); $mform = new mod_attcontrol_add_form($url, $formparams); if ($formdata = $mform->get_data()) { $sessions = construct_sessions_data_for_add($formdata); $att->add_sessions($sessions);
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require_once dirname(__FILE__) . '/../../config.php'; require_once dirname(__FILE__) . '/locallib.php'; $pageparams = new att_manage_page_params(); $id = required_param('id', PARAM_INT); $pageparams->action = optional_param('action', null, PARAM_INT); $from = optional_param('from', null, PARAM_ALPHANUMEXT); $pageparams->view = optional_param('view', null, PARAM_INT); $pageparams->curdate = optional_param('curdate', null, PARAM_INT); $cm = get_coursemodule_from_id('attcontrol', $id, 0, false, MUST_EXIST); $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); $att = $DB->get_record('attcontrol', array('id' => $cm->instance), '*', MUST_EXIST); require_login($course, true, $cm); $pageparams->init($cm); $att = new attcontrol($att, $cm, $course, $PAGE->context, $pageparams); if (!$att->perm->can_manage() && !$att->perm->can_take() && !$att->perm->can_change()) { redirect($att->url_view()); } // If teacher is coming from block, then check for a session exists for today. if ($from === 'block') { $sessions = $att->get_today_sessions(); $size = count($sessions); if ($size == 1) { $sess = reset($sessions); $nottaken = !$sess->lasttaken && has_capability('mod/attcontrol:takeattcontrols', $PAGE->context); $canchange = $sess->lasttaken && has_capability('mod/attcontrol:changeattcontrols', $PAGE->context); if ($nottaken || $canchange) { redirect($att->url_take(array('sessionid' => $sess->id, 'grouptype' => $sess->groupid))); } } else {
* * @package mod_attcontrol * @copyright 2013 José Luis Antúnez<*****@*****.**> * @copyright 2011 Artem Andreev <*****@*****.**> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require_once dirname(__FILE__) . '/../../config.php'; require_once dirname(__FILE__) . '/locallib.php'; $pageparams = new att_view_page_params(); $id = required_param('id', PARAM_INT); $pageparams->studentid = optional_param('studentid', null, PARAM_INT); $pageparams->view = optional_param('view', null, PARAM_INT); $pageparams->curdate = optional_param('curdate', null, PARAM_INT); $cm = get_coursemodule_from_id('attcontrol', $id, 0, false, MUST_EXIST); $course = $DB->get_record('course', array('id' => $cm->course), '*', MUST_EXIST); $attcontrol = $DB->get_record('attcontrol', array('id' => $cm->instance), '*', MUST_EXIST); require_login($course, true, $cm); $pageparams->init($cm); $att = new attcontrol($attcontrol, $cm, $course, $PAGE->context, $pageparams); // Redirect to appropriate page if can. if (!$pageparams->studentid) { if ($att->perm->can_manage() || $att->perm->can_take() || $att->perm->can_change()) { redirect($att->url_manage()); } else { if ($att->perm->can_view_reports()) { redirect($att->url_report()); } } } $att->perm->require_view_capability(); redirect($att->url_individualreport());