Search moodle.org's
Developer Documentation

See Release Notes
Long Term Support Release

  • Bug fixes for general core bugs in 3.9.x will end* 10 May 2021 (12 months).
  • Bug fixes for security issues in 3.9.x will end* 8 May 2023 (36 months).
  • PHP version: minimum PHP 7.2.0 Note: minimum PHP version has increased since Moodle 3.8. PHP 7.3.x and 7.4.x are supported too.
   1  <?php
   2  // This file is part of Moodle - http://moodle.org/
   3  //
   4  // Moodle is free software: you can redistribute it and/or modify
   5  // it under the terms of the GNU General Public License as published by
   6  // the Free Software Foundation, either version 3 of the License, or
   7  // (at your option) any later version.
   8  //
   9  // Moodle is distributed in the hope that it will be useful,
  10  // but WITHOUT ANY WARRANTY; without even the implied warranty of
  11  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12  // GNU General Public License for more details.
  13  //
  14  // You should have received a copy of the GNU General Public License
  15  // along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
  16  
  17  /**
  18   * Plugin capabilities
  19   *
  20   * @package    mod_feedback
  21   * @copyright  Andreas Grabs
  22   * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  23   */
  24  
  25  defined('MOODLE_INTERNAL') || die();
  26  
  27  $capabilities = array(
  28  
  29      'mod/feedback:addinstance' => array(
  30          'riskbitmask' => RISK_XSS,
  31  
  32          'captype' => 'write',
  33          'contextlevel' => CONTEXT_COURSE,
  34          'archetypes' => array(
  35              'editingteacher' => CAP_ALLOW,
  36              'manager' => CAP_ALLOW
  37          ),
  38          'clonepermissionsfrom' => 'moodle/course:manageactivities'
  39      ),
  40  
  41      'mod/feedback:view' => array(
  42  
  43          'captype' => 'read',
  44          'contextlevel' => CONTEXT_MODULE,
  45          'archetypes' => array(
  46              'guest' => CAP_ALLOW,
  47              'frontpage' => CAP_ALLOW,
  48              'student' => CAP_ALLOW,
  49              'teacher' => CAP_ALLOW,
  50              'editingteacher' => CAP_ALLOW,
  51              'manager' => CAP_ALLOW
  52          )
  53      ),
  54  
  55      'mod/feedback:complete' => array(
  56  
  57          'riskbitmask' => RISK_SPAM,
  58  
  59          'captype' => 'write',
  60          'contextlevel' => CONTEXT_MODULE,
  61          'archetypes' => array(
  62              'frontpage' => CAP_ALLOW,
  63              'student' => CAP_ALLOW
  64          )
  65      ),
  66  
  67      'mod/feedback:viewanalysepage' => array(
  68  
  69          'riskbitmask' => RISK_PERSONAL,
  70  
  71          'captype' => 'read',
  72          'contextlevel' => CONTEXT_MODULE,
  73          'archetypes' => array(
  74              'student' => CAP_ALLOW,
  75              'editingteacher' => CAP_ALLOW,
  76              'manager' => CAP_ALLOW
  77          )
  78      ),
  79  
  80      'mod/feedback:deletesubmissions' => array(
  81  
  82          'captype' => 'write',
  83          'contextlevel' => CONTEXT_MODULE,
  84          'archetypes' => array(
  85              'editingteacher' => CAP_ALLOW,
  86              'manager' => CAP_ALLOW
  87          )
  88      ),
  89  
  90      'mod/feedback:mapcourse' => array(
  91  
  92          'captype' => 'write',
  93          'contextlevel' => CONTEXT_MODULE,
  94          'archetypes' => array(
  95              'manager' => CAP_ALLOW
  96          )
  97      ),
  98  
  99      'mod/feedback:edititems' => array(
 100  
 101          'riskbitmask' => RISK_SPAM | RISK_XSS,
 102  
 103          'captype' => 'write',
 104          'contextlevel' => CONTEXT_MODULE,
 105          'archetypes' => array(
 106              'editingteacher' => CAP_ALLOW,
 107              'manager' => CAP_ALLOW
 108          )
 109      ),
 110  
 111      'mod/feedback:createprivatetemplate' => array(
 112  
 113          'riskbitmask' => RISK_SPAM,
 114  
 115          'captype' => 'write',
 116          'contextlevel' => CONTEXT_MODULE,
 117          'archetypes' => array(
 118              'editingteacher' => CAP_ALLOW,
 119              'manager' => CAP_ALLOW
 120          )
 121      ),
 122  
 123      'mod/feedback:createpublictemplate' => array(
 124  
 125          'riskbitmask' => RISK_SPAM,
 126  
 127          'captype' => 'write',
 128          'contextlevel' => CONTEXT_MODULE,
 129          'archetypes' => array(
 130              'editingteacher' => CAP_ALLOW,
 131              'manager' => CAP_ALLOW
 132          )
 133      ),
 134  
 135      'mod/feedback:deletetemplate' => array(
 136  
 137          'captype' => 'write',
 138          'contextlevel' => CONTEXT_MODULE,
 139          'archetypes' => array(
 140              'editingteacher' => CAP_ALLOW,
 141              'manager' => CAP_ALLOW
 142          )
 143      ),
 144  
 145      'mod/feedback:viewreports' => array(
 146  
 147          'riskbitmask' => RISK_PERSONAL,
 148  
 149          'captype' => 'read',
 150          'contextlevel' => CONTEXT_MODULE,
 151          'archetypes' => array(
 152              'teacher' => CAP_ALLOW,
 153              'editingteacher' => CAP_ALLOW,
 154              'manager' => CAP_ALLOW
 155          )
 156      ),
 157  
 158      'mod/feedback:receivemail' => array(
 159  
 160          'riskbitmask' => RISK_PERSONAL,
 161  
 162          'captype' => 'read',
 163          'contextlevel' => CONTEXT_MODULE,
 164          'archetypes' => array(
 165              'teacher' => CAP_ALLOW,
 166              'editingteacher' => CAP_ALLOW
 167          )
 168      ),
 169  
 170  );
 171  
 172