See Release Notes
Long Term Support Release
<?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/>. /** * Capability definitions for the quiz module. * * @package mod_quiz * @copyright 2006 The Open University * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ defined('MOODLE_INTERNAL') || die();< $capabilities = array(> $capabilities = [// Ability to see that the quiz exists, and the basic information // about it, for example the start date and time limit.< 'mod/quiz:view' => array(> 'mod/quiz:view' => ['captype' => 'read', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array(> 'archetypes' => ['guest' => CAP_ALLOW, 'student' => CAP_ALLOW, 'teacher' => CAP_ALLOW, 'editingteacher' => CAP_ALLOW, 'manager' => CAP_ALLOW< ) < ),> ] > ],// Ability to add a new quiz to the course.< 'mod/quiz:addinstance' => array(> 'mod/quiz:addinstance' => ['riskbitmask' => RISK_XSS, 'captype' => 'write', 'contextlevel' => CONTEXT_COURSE,< 'archetypes' => array(> 'archetypes' => ['editingteacher' => CAP_ALLOW, 'manager' => CAP_ALLOW< ),> ],'clonepermissionsfrom' => 'moodle/course:manageactivities'< ),> ],// Ability to do the quiz as a 'student'.< 'mod/quiz:attempt' => array(> 'mod/quiz:attempt' => ['riskbitmask' => RISK_SPAM, 'captype' => 'write', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array(> 'archetypes' => ['student' => CAP_ALLOW< ) < ),> ] > ],// Ability for a 'Student' to review their previous attempts. Review by // 'Teachers' is controlled by mod/quiz:viewreports.< 'mod/quiz:reviewmyattempts' => array(> 'mod/quiz:reviewmyattempts' => ['captype' => 'read', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array(> 'archetypes' => ['student' => CAP_ALLOW< ),> ],'clonepermissionsfrom' => 'moodle/quiz:attempt'< ),> ],// Edit the quiz settings, add and remove questions.< 'mod/quiz:manage' => array(> 'mod/quiz:manage' => ['riskbitmask' => RISK_SPAM, 'captype' => 'write', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array(> 'archetypes' => ['editingteacher' => CAP_ALLOW, 'manager' => CAP_ALLOW< ) < ),> ] > ],// Edit the quiz overrides.< 'mod/quiz:manageoverrides' => array(> 'mod/quiz:manageoverrides' => ['captype' => 'write', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array(> 'archetypes' => ['editingteacher' => CAP_ALLOW, 'manager' => CAP_ALLOW< ) < ),> ] > ], > > // View the quiz overrides (only checked for users who don't have mod/quiz:manageoverrides. > 'mod/quiz:viewoverrides' => [ > 'captype' => 'read', > 'contextlevel' => CONTEXT_MODULE, > 'archetypes' => [ > 'teacher' => CAP_ALLOW, > 'editingteacher' => CAP_ALLOW, > 'manager' => CAP_ALLOW > ] > ],// Preview the quiz.< 'mod/quiz:preview' => array(> 'mod/quiz:preview' => ['captype' => 'write', // Only just a write. 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array(> 'archetypes' => ['teacher' => CAP_ALLOW, 'editingteacher' => CAP_ALLOW, 'manager' => CAP_ALLOW< ) < ),> ] > ],// Manually grade and comment on student attempts at a question.< 'mod/quiz:grade' => array(> 'mod/quiz:grade' => ['riskbitmask' => RISK_SPAM | RISK_XSS, 'captype' => 'write', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array(> 'archetypes' => ['teacher' => CAP_ALLOW, 'editingteacher' => CAP_ALLOW, 'manager' => CAP_ALLOW< ) < ),> ] > ],// Regrade quizzes.< 'mod/quiz:regrade' => array(> 'mod/quiz:regrade' => ['riskbitmask' => RISK_SPAM, 'captype' => 'write', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array(> 'archetypes' => ['teacher' => CAP_ALLOW, 'editingteacher' => CAP_ALLOW, 'manager' => CAP_ALLOW< ),> ],'clonepermissionsfrom' => 'mod/quiz:grade'< ),> ],// View the quiz reports.< 'mod/quiz:viewreports' => array(> 'mod/quiz:viewreports' => ['riskbitmask' => RISK_PERSONAL, 'captype' => 'read', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array(> 'archetypes' => ['teacher' => CAP_ALLOW, 'editingteacher' => CAP_ALLOW, 'manager' => CAP_ALLOW< ) < ),> ] > ],// Delete attempts using the overview report.< 'mod/quiz:deleteattempts' => array(> 'mod/quiz:deleteattempts' => ['riskbitmask' => RISK_DATALOSS, 'captype' => 'write', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array(> 'archetypes' => [ > 'editingteacher' => CAP_ALLOW, > 'manager' => CAP_ALLOW > ] > ], > > // Re-open attempts after they are closed. > 'mod/quiz:reopenattempts' => [ > 'captype' => 'write', > 'contextlevel' => CONTEXT_MODULE, > 'archetypes' => ['editingteacher' => CAP_ALLOW, 'manager' => CAP_ALLOW< ) < ),> ] > ],// Do not have the time limit imposed. Used for accessibility legislation compliance.< 'mod/quiz:ignoretimelimits' => array(> 'mod/quiz:ignoretimelimits' => ['captype' => 'read', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array() < ),> 'archetypes' => [] > ],// Receive a confirmation message of own quiz submission.< 'mod/quiz:emailconfirmsubmission' => array(> 'mod/quiz:emailconfirmsubmission' => ['captype' => 'read', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array() < ),> 'archetypes' => [] > ],// Receive a notification message of other peoples' quiz submissions.< 'mod/quiz:emailnotifysubmission' => array(> 'mod/quiz:emailnotifysubmission' => ['captype' => 'read', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array() < ),> 'archetypes' => [] > ],// Receive a notification message when a quiz attempt becomes overdue.< 'mod/quiz:emailwarnoverdue' => array(> 'mod/quiz:emailwarnoverdue' => [ > 'captype' => 'read', > 'contextlevel' => CONTEXT_MODULE, > 'archetypes' => [] > ], > > // Receive a notification message when a quiz attempt manual graded. > 'mod/quiz:emailnotifyattemptgraded' => ['captype' => 'read', 'contextlevel' => CONTEXT_MODULE,< 'archetypes' => array() < ), < );> 'archetypes' => [] > ], > ];