Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 4.0.x will end 8 May 2023 (12 months).
  • Bug fixes for security issues in 4.0.x will end 13 November 2023 (18 months).
  • PHP version: minimum PHP 7.3.0 Note: the minimum PHP version has increased since Moodle 3.10. PHP 7.4.x is also supported.
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.

/**
< * Base class for the settings form for {@link quiz_attempts_report}s.
> * File only retained to prevent fatal errors in code that tries to require/include this.
*
< * @package mod_quiz < * @copyright 2012 The Open University < * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
> * @todo MDL-76612 delete this file as part of Moodle 4.6 development. > * @deprecated This file is no longer required in Moodle 4.2+.
*/
< <
defined('MOODLE_INTERNAL') || die();
< require_once($CFG->libdir . '/formslib.php'); < < < /** < * Base class for the settings form for {@link quiz_attempts_report}s. < * < * @copyright 2012 The Open University < * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later < */ < abstract class mod_quiz_attempts_report_form extends moodleform { < < protected function definition() { < $mform = $this->_form; < < $mform->addElement('header', 'preferencespage', < get_string('reportwhattoinclude', 'quiz')); < < $this->standard_attempt_fields($mform); < $this->other_attempt_fields($mform); < < $mform->addElement('header', 'preferencesuser', < get_string('reportdisplayoptions', 'quiz')); < < $this->standard_preference_fields($mform); < $this->other_preference_fields($mform); < < $mform->addElement('submit', 'submitbutton', < get_string('showreport', 'quiz')); < } < < protected function standard_attempt_fields(MoodleQuickForm $mform) { < < $mform->addElement('select', 'attempts', get_string('reportattemptsfrom', 'quiz'), array( < quiz_attempts_report::ENROLLED_WITH => get_string('reportuserswith', 'quiz'), < quiz_attempts_report::ENROLLED_WITHOUT => get_string('reportuserswithout', 'quiz'), < quiz_attempts_report::ENROLLED_ALL => get_string('reportuserswithorwithout', 'quiz'), < quiz_attempts_report::ALL_WITH => get_string('reportusersall', 'quiz'), < )); < < $stategroup = array( < $mform->createElement('advcheckbox', 'stateinprogress', '', < get_string('stateinprogress', 'quiz')), < $mform->createElement('advcheckbox', 'stateoverdue', '', < get_string('stateoverdue', 'quiz')), < $mform->createElement('advcheckbox', 'statefinished', '', < get_string('statefinished', 'quiz')), < $mform->createElement('advcheckbox', 'stateabandoned', '', < get_string('stateabandoned', 'quiz')), < ); < $mform->addGroup($stategroup, 'stateoptions', < get_string('reportattemptsthatare', 'quiz'), array(' '), false); < $mform->setDefault('stateinprogress', 1); < $mform->setDefault('stateoverdue', 1); < $mform->setDefault('statefinished', 1); < $mform->setDefault('stateabandoned', 1); < $mform->disabledIf('stateinprogress', 'attempts', 'eq', quiz_attempts_report::ENROLLED_WITHOUT); < $mform->disabledIf('stateoverdue', 'attempts', 'eq', quiz_attempts_report::ENROLLED_WITHOUT); < $mform->disabledIf('statefinished', 'attempts', 'eq', quiz_attempts_report::ENROLLED_WITHOUT); < $mform->disabledIf('stateabandoned', 'attempts', 'eq', quiz_attempts_report::ENROLLED_WITHOUT); < < if (quiz_report_can_filter_only_graded($this->_customdata['quiz'])) { < $gm = html_writer::tag('span', < quiz_get_grading_option_name($this->_customdata['quiz']->grademethod), < array('class' => 'highlight')); < $mform->addElement('advcheckbox', 'onlygraded', '', < get_string('reportshowonlyfinished', 'quiz', $gm)); < $mform->disabledIf('onlygraded', 'attempts', 'eq', quiz_attempts_report::ENROLLED_WITHOUT); < $mform->disabledIf('onlygraded', 'statefinished', 'notchecked'); < } < } < < protected function other_attempt_fields(MoodleQuickForm $mform) { < } < < protected function standard_preference_fields(MoodleQuickForm $mform) { < $mform->addElement('text', 'pagesize', get_string('pagesize', 'quiz')); < $mform->setType('pagesize', PARAM_INT); < } < < protected function other_preference_fields(MoodleQuickForm $mform) { < } < < public function validation($data, $files) { < $errors = parent::validation($data, $files); < < if ($data['attempts'] != quiz_attempts_report::ENROLLED_WITHOUT && !( < $data['stateinprogress'] || $data['stateoverdue'] || $data['statefinished'] || $data['stateabandoned'])) { < $errors['stateoptions'] = get_string('reportmustselectstate', 'quiz'); < } < < return $errors; < } < }
> debugging('This file is no longer required in Moodle 4.2+. Please do not include/require it.', DEBUG_DEVELOPER);