MDL-30070 message: Optimised search for users over multiple courses
[moodle.git] / lib / db / access.php
CommitLineData
117bd748 1<?php
5b4a78e2 2// This file is part of Moodle - http://moodle.org/
bbbf2d40 3//
5b4a78e2
PS
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.
bbbf2d40 8//
5b4a78e2
PS
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.
bbbf2d40 13//
5b4a78e2
PS
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 * Capability definitions for Moodle core.
19 *
20 * The capabilities are loaded into the database table when the module is
21 * installed or updated. Whenever the capability definitions are updated,
22 * the module version number should be bumped up.
23 *
24 * The system has four possible values for a capability:
25 * CAP_ALLOW, CAP_PREVENT, CAP_PROHIBIT, and inherit (not set).
26 *
27 *
28 * CAPABILITY NAMING CONVENTION
29 *
30 * It is important that capability names are unique. The naming convention
31 * for capabilities that are specific to modules and blocks is as follows:
32 * [mod/block]/<plugin_name>:<capabilityname>
33 *
34 * component_name should be the same as the directory name of the mod or block.
35 *
36 * Core moodle capabilities are defined thus:
37 * moodle/<capabilityclass>:<capabilityname>
38 *
39 * Examples: mod/forum:viewpost
40 * block/recent_activity:view
41 * moodle/site:deleteuser
42 *
43 * The variable name for the capability definitions array is $capabilities
44 *
39b90b51
EL
45 * For more information, take a look to the documentation available:
46 * - Access API: {@link http://docs.moodle.org/dev/Access_API}
47 * - Upgrade API: {@link http://docs.moodle.org/dev/Upgrade_API}
48 *
49 * @package core_access
50 * @category access
51 * @copyright 2006 onwards Martin Dougiamas http://dougiamas.com
52 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
5b4a78e2 53 */
bbbf2d40 54
5b4a78e2 55defined('MOODLE_INTERNAL') || die();
bbbf2d40 56
0ac940b3 57$capabilities = array(
bbbf2d40 58 'moodle/site:config' => array(
eef868d1 59
f432bebf 60 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS | RISK_CONFIG | RISK_DATALOSS,
21b6db6e 61
bbbf2d40 62 'captype' => 'write',
63 'contextlevel' => CONTEXT_SYSTEM,
31c93303 64 'archetypes' => array(
bbbf2d40 65 )
66 ),
eef868d1 67
51792df0 68 'moodle/site:readallmessages' => array(
eef868d1 69
bcdb0f19 70 'riskbitmask' => RISK_PERSONAL,
71
51792df0 72 'captype' => 'read',
73 'contextlevel' => CONTEXT_SYSTEM,
31c93303 74 'archetypes' => array(
4f0c2d00 75 'manager' => CAP_ALLOW,
4b7ae3c4 76 'editingteacher' => CAP_ALLOW
51792df0 77 )
78 ),
f7c0d84b 79
576ad290 80 'moodle/site:sendmessage' => array(
81
3a0c6cca 82 'riskbitmask' => RISK_SPAM,
576ad290 83
84 'captype' => 'write',
85 'contextlevel' => CONTEXT_SYSTEM,
31c93303 86 'archetypes' => array(
4f0c2d00 87 'manager' => CAP_ALLOW,
576ad290 88 'user' => CAP_ALLOW
89 )
f7c0d84b 90 ),
eef868d1 91
51792df0 92 'moodle/site:approvecourse' => array(
eef868d1 93
bcdb0f19 94 'riskbitmask' => RISK_XSS,
95
51792df0 96 'captype' => 'write',
97 'contextlevel' => CONTEXT_SYSTEM,
31c93303 98 'archetypes' => array(
4f0c2d00 99 'manager' => CAP_ALLOW
51792df0 100 )
101 ),
eef868d1 102
d2940003 103 'moodle/backup:backupcourse' => array(
eef868d1 104
21b6db6e 105 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
106
bbbf2d40 107 'captype' => 'write',
f432bebf 108 'contextlevel' => CONTEXT_COURSE,
31c93303 109 'archetypes' => array(
7246585a 110 'editingteacher' => CAP_ALLOW,
4f0c2d00 111 'manager' => CAP_ALLOW
d2940003
EL
112 ),
113
114 'clonepermissionsfrom' => 'moodle/site:backup'
bbbf2d40 115 ),
eef868d1 116
57ca97b3
EL
117 'moodle/backup:backupsection' => array(
118
119 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
120
121 'captype' => 'write',
122 'contextlevel' => CONTEXT_COURSE,
31c93303 123 'archetypes' => array(
57ca97b3
EL
124 'editingteacher' => CAP_ALLOW,
125 'manager' => CAP_ALLOW
126 ),
127
128 'clonepermissionsfrom' => 'moodle/backup:backupcourse'
129 ),
130
131 'moodle/backup:backupactivity' => array(
132
133 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
134
135 'captype' => 'write',
136 'contextlevel' => CONTEXT_MODULE,
31c93303 137 'archetypes' => array(
57ca97b3
EL
138 'editingteacher' => CAP_ALLOW,
139 'manager' => CAP_ALLOW
140 ),
141
142 'clonepermissionsfrom' => 'moodle/backup:backupcourse'
143 ),
144
145 'moodle/backup:backuptargethub' => array(
146
147 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
148
149 'captype' => 'write',
150 'contextlevel' => CONTEXT_COURSE,
31c93303 151 'archetypes' => array(
57ca97b3
EL
152 'editingteacher' => CAP_ALLOW,
153 'manager' => CAP_ALLOW
154 ),
155
156 'clonepermissionsfrom' => 'moodle/backup:backupcourse'
157 ),
158
159 'moodle/backup:backuptargetimport' => array(
160
161 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
162
163 'captype' => 'write',
164 'contextlevel' => CONTEXT_COURSE,
31c93303 165 'archetypes' => array(
57ca97b3
EL
166 'editingteacher' => CAP_ALLOW,
167 'manager' => CAP_ALLOW
168 ),
169
170 'clonepermissionsfrom' => 'moodle/backup:backupcourse'
171 ),
172
2fdde5d1 173 'moodle/backup:downloadfile' => array(
172dd12c 174
175 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
176
177 'captype' => 'write',
178 'contextlevel' => CONTEXT_COURSE,
31c93303 179 'archetypes' => array(
172dd12c 180 'editingteacher' => CAP_ALLOW,
4f0c2d00 181 'manager' => CAP_ALLOW
172dd12c 182 ),
183
2fdde5d1 184 'clonepermissionsfrom' => 'moodle/site:backupdownload'
172dd12c 185 ),
186
57ca97b3
EL
187 'moodle/backup:configure' => array(
188
189 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
190
191 'captype' => 'write',
192 'contextlevel' => CONTEXT_COURSE,
31c93303 193 'archetypes' => array(
57ca97b3
EL
194 'editingteacher' => CAP_ALLOW,
195 'manager' => CAP_ALLOW
196 )
197 ),
198
2fdde5d1 199 'moodle/backup:userinfo' => array(
172dd12c 200
2fdde5d1 201 'riskbitmask' => RISK_PERSONAL,
172dd12c 202
2fdde5d1 203 'captype' => 'read',
172dd12c 204 'contextlevel' => CONTEXT_COURSE,
31c93303 205 'archetypes' => array(
4f0c2d00 206 'manager' => CAP_ALLOW
2fdde5d1 207 )
172dd12c 208 ),
209
57ca97b3
EL
210 'moodle/backup:anonymise' => array(
211
212 'riskbitmask' => RISK_PERSONAL,
213
214 'captype' => 'read',
215 'contextlevel' => CONTEXT_COURSE,
31c93303 216 'archetypes' => array(
57ca97b3
EL
217 'manager' => CAP_ALLOW
218 )
219 ),
220
2fdde5d1 221 'moodle/restore:restorecourse' => array(
f2a0da6c 222
2fdde5d1 223 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
f2a0da6c 224
2fdde5d1 225 'captype' => 'write',
f2a0da6c 226 'contextlevel' => CONTEXT_COURSE,
31c93303 227 'archetypes' => array(
2fdde5d1 228 'editingteacher' => CAP_ALLOW,
4f0c2d00 229 'manager' => CAP_ALLOW
2fdde5d1
EL
230 ),
231
232 'clonepermissionsfrom' => 'moodle/site:restore'
f2a0da6c
EL
233 ),
234
57ca97b3
EL
235 'moodle/restore:restoresection' => array(
236
237 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
238
239 'captype' => 'write',
240 'contextlevel' => CONTEXT_COURSE,
31c93303 241 'archetypes' => array(
57ca97b3
EL
242 'editingteacher' => CAP_ALLOW,
243 'manager' => CAP_ALLOW
244 ),
245
246 'clonepermissionsfrom' => 'moodle/restore:restorecourse'
247 ),
248
249 'moodle/restore:restoreactivity' => array(
250
251 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
252
253 'captype' => 'write',
7efd488e 254 'contextlevel' => CONTEXT_COURSE,
31c93303 255 'archetypes' => array(
57ca97b3
EL
256 'editingteacher' => CAP_ALLOW,
257 'manager' => CAP_ALLOW
258 ),
259
260 'clonepermissionsfrom' => 'moodle/restore:restorecourse'
261 ),
262
bac233d3
SH
263 'moodle/restore:viewautomatedfilearea' => array(
264
265 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
266
267 'captype' => 'write',
268 'contextlevel' => CONTEXT_COURSE,
269 ),
270
57ca97b3
EL
271 'moodle/restore:restoretargethub' => array(
272
273 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
274
275 'captype' => 'write',
276 'contextlevel' => CONTEXT_COURSE,
31c93303 277 'archetypes' => array(
57ca97b3
EL
278 'editingteacher' => CAP_ALLOW,
279 'manager' => CAP_ALLOW
280 ),
281
282 'clonepermissionsfrom' => 'moodle/restore:restorecourse'
283 ),
284
157aa3a2 285 'moodle/restore:restoretargetimport' => array(
eef868d1 286
21b6db6e 287 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
288
bbbf2d40 289 'captype' => 'write',
f432bebf 290 'contextlevel' => CONTEXT_COURSE,
31c93303 291 'archetypes' => array(
7246585a 292 'editingteacher' => CAP_ALLOW,
4f0c2d00 293 'manager' => CAP_ALLOW
d2940003
EL
294 ),
295
157aa3a2 296 'clonepermissionsfrom' => 'moodle/site:import'
bbbf2d40 297 ),
eef868d1 298
157aa3a2 299 'moodle/restore:uploadfile' => array(
5e934890 300
157aa3a2 301 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
5e934890
EL
302
303 'captype' => 'write',
157aa3a2 304 'contextlevel' => CONTEXT_COURSE,
31c93303 305 'archetypes' => array(
157aa3a2 306 'editingteacher' => CAP_ALLOW,
4f0c2d00 307 'manager' => CAP_ALLOW
157aa3a2
EL
308 ),
309
310 'clonepermissionsfrom' => 'moodle/site:backupupload'
5e934890
EL
311 ),
312
57ca97b3 313 'moodle/restore:configure' => array(
f6459d12 314
57ca97b3 315 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
f6459d12
EL
316
317 'captype' => 'write',
318 'contextlevel' => CONTEXT_COURSE,
31c93303 319 'archetypes' => array(
57ca97b3 320 'editingteacher' => CAP_ALLOW,
4f0c2d00 321 'manager' => CAP_ALLOW
f6459d12
EL
322 )
323 ),
324
57ca97b3 325 'moodle/restore:rolldates' => array(
157aa3a2
EL
326
327 'captype' => 'write',
57ca97b3 328 'contextlevel' => CONTEXT_COURSE,
31c93303 329 'archetypes' => array(
57ca97b3 330 'coursecreator' => CAP_ALLOW,
4f0c2d00 331 'manager' => CAP_ALLOW
157aa3a2
EL
332 )
333 ),
334
57ca97b3
EL
335 'moodle/restore:userinfo' => array(
336
337 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS | RISK_CONFIG,
982e45af 338
339 'captype' => 'write',
340 'contextlevel' => CONTEXT_COURSE,
31c93303 341 'archetypes' => array(
57ca97b3
EL
342 'manager' => CAP_ALLOW
343 )
344 ),
345
346 'moodle/restore:createuser' => array(
347
348 'riskbitmask' => RISK_SPAM | RISK_PERSONAL,
349
350 'captype' => 'write',
351 'contextlevel' => CONTEXT_SYSTEM,
31c93303 352 'archetypes' => array(
4f0c2d00 353 'manager' => CAP_ALLOW
982e45af 354 )
355 ),
356
bbbf2d40 357 'moodle/site:manageblocks' => array(
eef868d1 358
21b6db6e 359 'riskbitmask' => RISK_SPAM | RISK_XSS,
360
bbbf2d40 361 'captype' => 'write',
f432bebf 362 'contextlevel' => CONTEXT_BLOCK,
31c93303 363 'archetypes' => array(
73b73d21 364 'editingteacher' => CAP_ALLOW,
4f0c2d00 365 'manager' => CAP_ALLOW
bbbf2d40 366 )
367 ),
eef868d1 368
27950688 369 'moodle/site:accessallgroups' => array(
eef868d1 370
27950688 371 'captype' => 'read',
f432bebf 372 'contextlevel' => CONTEXT_COURSE,
31c93303 373 'archetypes' => array(
27950688 374 'teacher' => CAP_ALLOW,
375 'editingteacher' => CAP_ALLOW,
4f0c2d00 376 'manager' => CAP_ALLOW
27950688 377 )
378 ),
eef868d1 379
53d7785b 380 'moodle/site:viewfullnames' => array(
eef868d1 381
53d7785b 382 'captype' => 'read',
f432bebf 383 'contextlevel' => CONTEXT_COURSE,
31c93303 384 'archetypes' => array(
53d7785b 385 'teacher' => CAP_ALLOW,
386 'editingteacher' => CAP_ALLOW,
4f0c2d00 387 'manager' => CAP_ALLOW
53d7785b 388 )
389 ),
eef868d1 390
5c60a847 391 // In reports that give lists of users, extra information about each user's
392 // identity (the fields configured in site option showuseridentity) will be
393 // displayed to users who have this capability.
394 'moodle/site:viewuseridentity' => array(
395
396 'captype' => 'read',
397 'contextlevel' => CONTEXT_COURSE,
398 'archetypes' => array(
399 'teacher' => CAP_ALLOW,
400 'editingteacher' => CAP_ALLOW,
401 'manager' => CAP_ALLOW
402 )
403 ),
404
a028c291 405 'moodle/site:viewreports' => array(
eef868d1 406
21b6db6e 407 'riskbitmask' => RISK_PERSONAL,
408
a028c291 409 'captype' => 'read',
f432bebf 410 'contextlevel' => CONTEXT_COURSE,
31c93303 411 'archetypes' => array(
a028c291 412 'teacher' => CAP_ALLOW,
413 'editingteacher' => CAP_ALLOW,
4f0c2d00 414 'manager' => CAP_ALLOW
a028c291 415 )
416 ),
eef868d1 417
7d8a3cb0 418 'moodle/site:trustcontent' => array(
eef868d1 419
21b6db6e 420 'riskbitmask' => RISK_XSS,
421
7d8a3cb0 422 'captype' => 'write',
f432bebf 423 'contextlevel' => CONTEXT_COURSE,
31c93303 424 'archetypes' => array(
7d8a3cb0 425 'editingteacher' => CAP_ALLOW,
4f0c2d00 426 'manager' => CAP_ALLOW
7d8a3cb0 427 )
428 ),
eef868d1 429
6df3c7df 430 'moodle/site:uploadusers' => array(
eef868d1 431
21b6db6e 432 'riskbitmask' => RISK_SPAM | RISK_PERSONAL,
433
bbbf2d40 434 'captype' => 'write',
435 'contextlevel' => CONTEXT_SYSTEM,
31c93303 436 'archetypes' => array(
4f0c2d00 437 'manager' => CAP_ALLOW
bbbf2d40 438 )
439 ),
eef868d1 440
94211250 441 // Permission to manage filter setting overrides in subcontexts.
442 'moodle/filter:manage' => array(
443
444 'captype' => 'write',
445 'contextlevel' => CONTEXT_COURSE,
31c93303 446 'archetypes' => array(
94211250 447 'editingteacher' => CAP_ALLOW,
4f0c2d00 448 'manager' => CAP_ALLOW,
94211250 449 )
450 ),
6df3c7df 451
452 'moodle/user:create' => array(
453
454 'riskbitmask' => RISK_SPAM | RISK_PERSONAL,
eef868d1 455
bbbf2d40 456 'captype' => 'write',
457 'contextlevel' => CONTEXT_SYSTEM,
31c93303 458 'archetypes' => array(
4f0c2d00 459 'manager' => CAP_ALLOW
bbbf2d40 460 )
461 ),
eef868d1 462
6df3c7df 463 'moodle/user:delete' => array(
cc891abe 464
3a0c6cca 465 'riskbitmask' => RISK_PERSONAL, RISK_DATALOSS,
bcdb0f19 466
cc891abe 467 'captype' => 'write',
468 'contextlevel' => CONTEXT_SYSTEM,
31c93303 469 'archetypes' => array(
4f0c2d00 470 'manager' => CAP_ALLOW
cc891abe 471 )
472 ),
473
6df3c7df 474 'moodle/user:update' => array(
cc891abe 475
476 'riskbitmask' => RISK_SPAM | RISK_PERSONAL,
21b6db6e 477
bbbf2d40 478 'captype' => 'write',
479 'contextlevel' => CONTEXT_SYSTEM,
31c93303 480 'archetypes' => array(
4f0c2d00 481 'manager' => CAP_ALLOW
bbbf2d40 482 )
483 ),
eef868d1 484
bbbf2d40 485 'moodle/user:viewdetails' => array(
eef868d1 486
e58eca72 487 'captype' => 'read',
f432bebf 488 'contextlevel' => CONTEXT_COURSE,
31c93303 489 'archetypes' => array(
22ae509e 490 'guest' => CAP_ALLOW,
491 'student' => CAP_ALLOW,
492 'teacher' => CAP_ALLOW,
493 'editingteacher' => CAP_ALLOW,
4f0c2d00 494 'manager' => CAP_ALLOW
bbbf2d40 495 )
496 ),
e58eca72 497
6d153e67 498 'moodle/user:viewalldetails' => array(
499 'riskbitmask' => RISK_PERSONAL,
500 'captype' => 'read',
501 'contextlevel' => CONTEXT_USER,
502 'archetypes' => array(
503 'manager' => CAP_ALLOW
504 ),
505 'clonepermissionsfrom' => 'moodle/user:update'
506 ),
507
e58eca72 508 'moodle/user:viewhiddendetails' => array(
eef868d1 509
21b6db6e 510 'riskbitmask' => RISK_PERSONAL,
511
e58eca72 512 'captype' => 'read',
f432bebf 513 'contextlevel' => CONTEXT_COURSE,
31c93303 514 'archetypes' => array(
e58eca72 515 'teacher' => CAP_ALLOW,
516 'editingteacher' => CAP_ALLOW,
4f0c2d00 517 'manager' => CAP_ALLOW
e58eca72 518 )
519 ),
eef868d1 520
6c95827f 521 'moodle/user:loginas' => array(
522
523 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS | RISK_CONFIG,
524
525 'captype' => 'write',
526 'contextlevel' => CONTEXT_COURSE,
31c93303 527 'archetypes' => array(
4f0c2d00 528 'manager' => CAP_ALLOW
6c95827f 529 )
530 ),
531
03d9401e
MD
532 // can the user manage the system default profile page?
533 'moodle/user:managesyspages' => array(
534
535 'riskbitmap' => RISK_SPAM | RISK_PERSONAL | RISK_CONFIG,
536
537 'captype' => 'write',
538 'contextlevel' => CONTEXT_SYSTEM,
31c93303 539 'archetypes' => array(
03d9401e
MD
540 'manager' => CAP_ALLOW
541 )
542 ),
543
544 // can the user manage another user's profile page?
545 'moodle/user:manageblocks' => array(
546
547 'riskbitmap' => RISK_SPAM | RISK_PERSONAL,
548
549 'captype' => 'write',
550 'contextlevel' => CONTEXT_USER
551 ),
552
553 // can the user manage their own profile page?
554 'moodle/user:manageownblocks' => array(
555
556 'riskbitmap' => RISK_SPAM | RISK_PERSONAL,
557
558 'captype' => 'write',
559 'contextlevel' => CONTEXT_SYSTEM,
31c93303 560 'archetypes' => array(
e4f413b4
MD
561 'user' => CAP_ALLOW
562 )
563 ),
564
565 // can the user manage their own files?
566 'moodle/user:manageownfiles' => array(
567
568 'riskbitmap' => RISK_SPAM | RISK_PERSONAL,
569
570 'captype' => 'write',
571 'contextlevel' => CONTEXT_SYSTEM,
572 'archetypes' => array(
573 'user' => CAP_ALLOW
03d9401e
MD
574 )
575 ),
576
380c122f
FM
577 // Can the user ignore the setting userquota?
578 // The permissions are cloned from ignorefilesizelimits as it was partly used for that purpose.
579 'moodle/user:ignoreuserquota' => array(
580 'riskbitmap' => RISK_SPAM,
581 'captype' => 'write',
582 'contextlevel' => CONTEXT_SYSTEM,
583 'clonepermissionsfrom' => 'moodle/course:ignorefilesizelimits'
584 ),
585
03d9401e
MD
586 // can the user manage the system default dashboard page?
587 'moodle/my:configsyspages' => array(
588
589 'riskbitmap' => RISK_SPAM | RISK_PERSONAL | RISK_CONFIG,
590
591 'captype' => 'write',
592 'contextlevel' => CONTEXT_SYSTEM,
31c93303 593 'archetypes' => array(
03d9401e
MD
594 'manager' => CAP_ALLOW
595 )
596 ),
597
bbbf2d40 598 'moodle/role:assign' => array(
eef868d1 599
3a0c6cca 600 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
601
bbbf2d40 602 'captype' => 'write',
f432bebf 603 'contextlevel' => CONTEXT_COURSE,
31c93303 604 'archetypes' => array(
861fdcaa 605 'editingteacher' => CAP_ALLOW,
4f0c2d00 606 'manager' => CAP_ALLOW
68c52526 607 )
608 ),
eef868d1 609
01a2ce80
PS
610 'moodle/role:review' => array(
611
612 'riskbitmask' => RISK_PERSONAL,
613
614 'captype' => 'read',
615 'contextlevel' => CONTEXT_COURSE,
31c93303 616 'archetypes' => array(
01a2ce80
PS
617 'teacher' => CAP_ALLOW,
618 'editingteacher' => CAP_ALLOW,
4f0c2d00 619 'manager' => CAP_ALLOW
01a2ce80
PS
620 )
621 ),
622
68c52526 623 'moodle/role:override' => array(
eef868d1 624
bcdb0f19 625 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
626
68c52526 627 'captype' => 'write',
f432bebf 628 'contextlevel' => CONTEXT_COURSE,
31c93303 629 'archetypes' => array(
4f0c2d00 630 'manager' => CAP_ALLOW
bbbf2d40 631 )
632 ),
eef868d1 633
3a0c6cca 634 'moodle/role:safeoverride' => array(
635
636 'riskbitmask' => RISK_SPAM,
637
638 'captype' => 'write',
f432bebf 639 'contextlevel' => CONTEXT_COURSE,
31c93303 640 'archetypes' => array(
3a0c6cca 641 'editingteacher' => CAP_ALLOW
642 )
643 ),
644
bbbf2d40 645 'moodle/role:manage' => array(
eef868d1 646
bcdb0f19 647 'riskbitmask' => RISK_SPAM | RISK_PERSONAL | RISK_XSS,
648
bbbf2d40 649 'captype' => 'write',
650 'contextlevel' => CONTEXT_SYSTEM,
31c93303 651 'archetypes' => array(
4f0c2d00 652 'manager' => CAP_ALLOW
bbbf2d40 653 )
654 ),
f43ce1ad 655
20dd4cf5 656 'moodle/role:switchroles' => array(
bcdb0f19 657
3a0c6cca 658 'riskbitmask' => RISK_XSS | RISK_PERSONAL,
bcdb0f19 659
20dd4cf5 660 'captype' => 'read',
f432bebf 661 'contextlevel' => CONTEXT_COURSE,
31c93303 662 'archetypes' => array(
20dd4cf5 663 'editingteacher' => CAP_ALLOW,
4f0c2d00 664 'manager' => CAP_ALLOW
20dd4cf5 665 )
666 ),
667
8ed5dd63 668 // Create, update and delete course categories. (Deleting a course category
669 // does not let you delete the courses it contains, unless you also have
670 // moodle/course: delete.) Creating and deleting requires this permission in
671 // the parent category.
672 'moodle/category:manage' => array(
eef868d1 673
89a792ab 674 'riskbitmask' => RISK_XSS,
675
bbbf2d40 676 'captype' => 'write',
677 'contextlevel' => CONTEXT_COURSECAT,
31c93303 678 'archetypes' => array(
4f0c2d00 679 'manager' => CAP_ALLOW
8ed5dd63 680 ),
681 'clonepermissionsfrom' => 'moodle/category:update'
bbbf2d40 682 ),
eef868d1 683
8ed5dd63 684 'moodle/category:viewhiddencategories' => array(
eef868d1 685
8ed5dd63 686 'captype' => 'read',
bbbf2d40 687 'contextlevel' => CONTEXT_COURSECAT,
31c93303 688 'archetypes' => array(
8ed5dd63 689 'coursecreator' => CAP_ALLOW,
4f0c2d00 690 'manager' => CAP_ALLOW
8ed5dd63 691 ),
692 'clonepermissionsfrom' => 'moodle/category:visibility'
bbbf2d40 693 ),
eef868d1 694
3f791403
PS
695 // create, delete, move cohorts in system and course categories,
696 // (cohorts with component !== null can be only moved)
697 'moodle/cohort:manage' => array(
698
699 'captype' => 'write',
700 'contextlevel' => CONTEXT_COURSECAT,
31c93303 701 'archetypes' => array(
3f791403
PS
702 'manager' => CAP_ALLOW
703 )
704 ),
705
706 // add and remove cohort members (only for cohorts where component !== null)
707 'moodle/cohort:assign' => array(
708
709 'captype' => 'write',
710 'contextlevel' => CONTEXT_COURSECAT,
31c93303 711 'archetypes' => array(
3f791403
PS
712 'manager' => CAP_ALLOW
713 )
714 ),
715
716 // view members of a cohort, this can be used in course context too,
717 // this also controls the ability to actually use cohort
718 'moodle/cohort:view' => array(
719
720 'captype' => 'read',
721 'contextlevel' => CONTEXT_COURSE,
31c93303 722 'archetypes' => array(
3f791403
PS
723 'editingteacher' => CAP_ALLOW,
724 'manager' => CAP_ALLOW
725 )
726 ),
727
bbbf2d40 728 'moodle/course:create' => array(
eef868d1 729
21b6db6e 730 'riskbitmask' => RISK_XSS,
731
bbbf2d40 732 'captype' => 'write',
5e992f56 733 'contextlevel' => CONTEXT_COURSECAT,
31c93303 734 'archetypes' => array(
4473252d 735 'coursecreator' => CAP_ALLOW,
4f0c2d00 736 'manager' => CAP_ALLOW
bbbf2d40 737 )
738 ),
eef868d1 739
e452210a 740 'moodle/course:request' => array(
741 'captype' => 'write',
742 'contextlevel' => CONTEXT_SYSTEM,
31c93303 743 'archetypes' => array(
e452210a 744 'user' => CAP_ALLOW,
745 )
746 ),
747
bbbf2d40 748 'moodle/course:delete' => array(
eef868d1 749
3a0c6cca 750 'riskbitmask' => RISK_DATALOSS,
751
bbbf2d40 752 'captype' => 'write',
753 'contextlevel' => CONTEXT_COURSE,
31c93303 754 'archetypes' => array(
4f0c2d00 755 'manager' => CAP_ALLOW
bbbf2d40 756 )
757 ),
eef868d1 758
bbbf2d40 759 'moodle/course:update' => array(
eef868d1 760
21b6db6e 761 'riskbitmask' => RISK_XSS,
762
bbbf2d40 763 'captype' => 'write',
764 'contextlevel' => CONTEXT_COURSE,
31c93303 765 'archetypes' => array(
bbbf2d40 766 'editingteacher' => CAP_ALLOW,
4f0c2d00 767 'manager' => CAP_ALLOW
bbbf2d40 768 )
769 ),
eef868d1 770
df997f84 771 'moodle/course:view' => array(
eef868d1 772
bbbf2d40 773 'captype' => 'read',
774 'contextlevel' => CONTEXT_COURSE,
31c93303 775 'archetypes' => array(
df997f84 776 'manager' => CAP_ALLOW,
bbbf2d40 777 )
778 ),
eef868d1 779
df997f84
PS
780 /* review course enrolments - no group restrictions, it is really full access to all participants info*/
781 'moodle/course:enrolreview' => array(
782
783 'riskbitmask' => RISK_PERSONAL,
4f0c2d00
PS
784
785 'captype' => 'read',
786 'contextlevel' => CONTEXT_COURSE,
31c93303 787 'archetypes' => array(
df997f84
PS
788 'editingteacher' => CAP_ALLOW,
789 'manager' => CAP_ALLOW,
790 )
791 ),
792
793 /* add, remove, hide enrol instances in courses */
794 'moodle/course:enrolconfig' => array(
795
796 'riskbitmask' => RISK_PERSONAL,
797
798 'captype' => 'write',
799 'contextlevel' => CONTEXT_COURSE,
800 'archetypes' => array(
801 'editingteacher' => CAP_ALLOW,
4f0c2d00
PS
802 'manager' => CAP_ALLOW,
803 )
804 ),
805
77c645df 806 'moodle/course:bulkmessaging' => array(
807
808 'riskbitmask' => RISK_SPAM,
809
810 'captype' => 'write',
811 'contextlevel' => CONTEXT_COURSE,
31c93303 812 'archetypes' => array(
77c645df 813 'teacher' => CAP_ALLOW,
814 'editingteacher' => CAP_ALLOW,
4f0c2d00 815 'manager' => CAP_ALLOW
77c645df 816 )
817 ),
818
1c45e42e 819 'moodle/course:viewhiddenuserfields' => array(
eef868d1 820
21b6db6e 821 'riskbitmask' => RISK_PERSONAL,
4e781c7b 822
823 'captype' => 'read',
824 'contextlevel' => CONTEXT_COURSE,
31c93303 825 'archetypes' => array(
4e781c7b 826 'teacher' => CAP_ALLOW,
827 'editingteacher' => CAP_ALLOW,
4f0c2d00 828 'manager' => CAP_ALLOW
4e781c7b 829 )
830 ),
831
1c45e42e 832 'moodle/course:viewhiddencourses' => array(
eef868d1 833
1c45e42e 834 'captype' => 'read',
835 'contextlevel' => CONTEXT_COURSE,
31c93303 836 'archetypes' => array(
2f5ab42b 837 'coursecreator' => CAP_ALLOW,
838 'teacher' => CAP_ALLOW,
839 'editingteacher' => CAP_ALLOW,
4f0c2d00 840 'manager' => CAP_ALLOW
1c45e42e 841 )
842 ),
eef868d1 843
bbbf2d40 844 'moodle/course:visibility' => array(
eef868d1 845
bbbf2d40 846 'captype' => 'write',
847 'contextlevel' => CONTEXT_COURSE,
31c93303 848 'archetypes' => array(
df997f84 849 'editingteacher' => CAP_ALLOW,
4f0c2d00 850 'manager' => CAP_ALLOW
bbbf2d40 851 )
852 ),
eef868d1 853
a028c291 854 'moodle/course:managefiles' => array(
eef868d1 855
21b6db6e 856 'riskbitmask' => RISK_XSS,
857
a028c291 858 'captype' => 'write',
859 'contextlevel' => CONTEXT_COURSE,
31c93303 860 'archetypes' => array(
a028c291 861 'editingteacher' => CAP_ALLOW,
4f0c2d00 862 'manager' => CAP_ALLOW
a028c291 863 )
864 ),
eef868d1 865
8ac95c27
AD
866 'moodle/course:ignorefilesizelimits' => array(
867
868 'captype' => 'write',
869 'contextlevel' => CONTEXT_COURSE,
870 'archetypes' => array(
871 )
872 ),
873
bbbf2d40 874 'moodle/course:manageactivities' => array(
eef868d1 875
21b6db6e 876 'riskbitmask' => RISK_XSS,
877
bbbf2d40 878 'captype' => 'write',
af189935 879 'contextlevel' => CONTEXT_MODULE,
31c93303 880 'archetypes' => array(
bbbf2d40 881 'editingteacher' => CAP_ALLOW,
4f0c2d00 882 'manager' => CAP_ALLOW
bbbf2d40 883 )
884 ),
eef868d1 885
bbbf2d40 886 'moodle/course:activityvisibility' => array(
eef868d1 887
bbbf2d40 888 'captype' => 'write',
af189935 889 'contextlevel' => CONTEXT_MODULE,
31c93303 890 'archetypes' => array(
bbbf2d40 891 'editingteacher' => CAP_ALLOW,
4f0c2d00 892 'manager' => CAP_ALLOW
bbbf2d40 893 )
894 ),
eef868d1 895
bbbf2d40 896 'moodle/course:viewhiddenactivities' => array(
eef868d1 897
bbbf2d40 898 'captype' => 'write',
af189935 899 'contextlevel' => CONTEXT_MODULE,
31c93303 900 'archetypes' => array(
bbbf2d40 901 'teacher' => CAP_ALLOW,
902 'editingteacher' => CAP_ALLOW,
4f0c2d00 903 'manager' => CAP_ALLOW
bbbf2d40 904 )
905 ),
eef868d1 906
bbbf2d40 907 'moodle/course:viewparticipants' => array(
eef868d1 908
bbbf2d40 909 'captype' => 'read',
910 'contextlevel' => CONTEXT_COURSE,
31c93303 911 'archetypes' => array(
bbbf2d40 912 'student' => CAP_ALLOW,
913 'teacher' => CAP_ALLOW,
914 'editingteacher' => CAP_ALLOW,
4f0c2d00 915 'manager' => CAP_ALLOW
165088f6 916 )
917 ),
f7c0d84b 918
919 'moodle/course:changefullname' => array(
920
cd7f72c0 921 'riskbitmask' => RISK_XSS,
922
f7c0d84b 923 'captype' => 'write',
924 'contextlevel' => CONTEXT_COURSE,
31c93303 925 'archetypes' => array(
f7c0d84b 926 'editingteacher' => CAP_ALLOW,
4f0c2d00 927 'manager' => CAP_ALLOW
5e99b9d7 928 ),
929 'clonepermissionsfrom' => 'moodle/course:update'
f7c0d84b 930 ),
931
932 'moodle/course:changeshortname' => array(
933
cd7f72c0 934 'riskbitmask' => RISK_XSS,
935
f7c0d84b 936 'captype' => 'write',
937 'contextlevel' => CONTEXT_COURSE,
31c93303 938 'archetypes' => array(
f7c0d84b 939 'editingteacher' => CAP_ALLOW,
4f0c2d00 940 'manager' => CAP_ALLOW
5e99b9d7 941 ),
942 'clonepermissionsfrom' => 'moodle/course:update'
f7c0d84b 943 ),
944
945 'moodle/course:changeidnumber' => array(
946
cd7f72c0 947 'riskbitmask' => RISK_XSS,
948
f7c0d84b 949 'captype' => 'write',
950 'contextlevel' => CONTEXT_COURSE,
31c93303 951 'archetypes' => array(
f7c0d84b 952 'editingteacher' => CAP_ALLOW,
4f0c2d00 953 'manager' => CAP_ALLOW
5e99b9d7 954 ),
955 'clonepermissionsfrom' => 'moodle/course:update'
f7c0d84b 956 ),
50569ba3 957 'moodle/course:changecategory' => array(
958 'riskbitmask' => RISK_XSS,
959
960 'captype' => 'write',
961 'contextlevel' => CONTEXT_COURSE,
31c93303 962 'archetypes' => array(
50569ba3 963 'editingteacher' => CAP_ALLOW,
4f0c2d00 964 'manager' => CAP_ALLOW
50569ba3 965 ),
966 'clonepermissionsfrom' => 'moodle/course:update'
967 ),
968
969 'moodle/course:changesummary' => array(
970 'riskbitmask' => RISK_XSS,
971
972 'captype' => 'write',
973 'contextlevel' => CONTEXT_COURSE,
31c93303 974 'archetypes' => array(
50569ba3 975 'editingteacher' => CAP_ALLOW,
4f0c2d00 976 'manager' => CAP_ALLOW
50569ba3 977 ),
978 'clonepermissionsfrom' => 'moodle/course:update'
979 ),
980
f7c0d84b 981
165088f6 982 'moodle/site:viewparticipants' => array(
983
984 'captype' => 'read',
985 'contextlevel' => CONTEXT_SYSTEM,
31c93303 986 'archetypes' => array(
4f0c2d00 987 'manager' => CAP_ALLOW
bbbf2d40 988 )
989 ),
eef868d1 990
b61924d4 991 'moodle/course:isincompletionreports' => array(
992 'captype' => 'read',
993 'contextlevel' => CONTEXT_COURSE,
994 'archetypes' => array(
995 'student' => CAP_ALLOW,
996 ),
997 ),
998
bbbf2d40 999 'moodle/course:viewscales' => array(
eef868d1 1000
bbbf2d40 1001 'captype' => 'read',
1002 'contextlevel' => CONTEXT_COURSE,
31c93303 1003 'archetypes' => array(
bbbf2d40 1004 'student' => CAP_ALLOW,
1005 'teacher' => CAP_ALLOW,
1006 'editingteacher' => CAP_ALLOW,
4f0c2d00 1007 'manager' => CAP_ALLOW
bbbf2d40 1008 )
1009 ),
eef868d1 1010
bbbf2d40 1011 'moodle/course:managescales' => array(
eef868d1 1012
bbbf2d40 1013 'captype' => 'write',
1014 'contextlevel' => CONTEXT_COURSE,
31c93303 1015 'archetypes' => array(
bbbf2d40 1016 'editingteacher' => CAP_ALLOW,
4f0c2d00 1017 'manager' => CAP_ALLOW
bbbf2d40 1018 )
1019 ),
eef868d1 1020
bbbf2d40 1021 'moodle/course:managegroups' => array(
1022
1023 'captype' => 'write',
1024 'contextlevel' => CONTEXT_COURSE,
31c93303 1025 'archetypes' => array(
a028c291 1026 'editingteacher' => CAP_ALLOW,
4f0c2d00 1027 'manager' => CAP_ALLOW
a028c291 1028 )
1029 ),
eef868d1 1030
a028c291 1031 'moodle/course:reset' => array(
1032
3a0c6cca 1033 'riskbitmask' => RISK_DATALOSS,
1034
a028c291 1035 'captype' => 'write',
1036 'contextlevel' => CONTEXT_COURSE,
31c93303 1037 'archetypes' => array(
bbbf2d40 1038 'editingteacher' => CAP_ALLOW,
4f0c2d00 1039 'manager' => CAP_ALLOW
bbbf2d40 1040 )
1041 ),
eef868d1 1042
bbbf2d40 1043 'moodle/blog:view' => array(
1044
1045 'captype' => 'read',
05de723b 1046 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1047 'archetypes' => array(
05de723b
NC
1048 'guest' => CAP_ALLOW,
1049 'user' => CAP_ALLOW,
1050 'student' => CAP_ALLOW,
1051 'teacher' => CAP_ALLOW,
1052 'editingteacher' => CAP_ALLOW,
4f0c2d00 1053 'manager' => CAP_ALLOW
05de723b
NC
1054 )
1055 ),
1056
1057 'moodle/blog:search' => array(
1058 'captype' => 'read',
1059 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1060 'archetypes' => array(
00adf177 1061 'guest' => CAP_ALLOW,
c785d40a 1062 'user' => CAP_ALLOW,
bbbf2d40 1063 'student' => CAP_ALLOW,
1064 'teacher' => CAP_ALLOW,
1065 'editingteacher' => CAP_ALLOW,
4f0c2d00 1066 'manager' => CAP_ALLOW
bbbf2d40 1067 )
1068 ),
eef868d1 1069
05de723b
NC
1070 'moodle/blog:viewdrafts' => array(
1071
1072 'riskbitmask' => RISK_PERSONAL,
1073 'captype' => 'read',
1074 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1075 'archetypes' => array(
4f0c2d00 1076 'manager' => CAP_ALLOW
05de723b
NC
1077 )
1078 ),
1079
5a8ab2e9 1080 'moodle/blog:create' => array( // works in CONTEXT_SYSTEM only
bbbf2d40 1081
21b6db6e 1082 'riskbitmask' => RISK_SPAM,
1083
bbbf2d40 1084 'captype' => 'write',
1085 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1086 'archetypes' => array(
c785d40a 1087 'user' => CAP_ALLOW,
4f0c2d00 1088 'manager' => CAP_ALLOW
bbbf2d40 1089 )
1090 ),
eef868d1 1091
bbbf2d40 1092 'moodle/blog:manageentries' => array(
1093
21b6db6e 1094 'riskbitmask' => RISK_SPAM,
1095
bbbf2d40 1096 'captype' => 'write',
05de723b 1097 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1098 'archetypes' => array(
bbbf2d40 1099 'teacher' => CAP_ALLOW,
1100 'editingteacher' => CAP_ALLOW,
4f0c2d00 1101 'manager' => CAP_ALLOW
bbbf2d40 1102 )
1103 ),
05de723b 1104
cae83708 1105 'moodle/blog:manageexternal' => array(
1106
1107 'riskbitmask' => RISK_SPAM,
1108
1109 'captype' => 'write',
296f6c99 1110 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1111 'archetypes' => array(
cae83708 1112 'student' => CAP_ALLOW,
1113 'user' => CAP_ALLOW,
1114 'teacher' => CAP_ALLOW,
1115 'editingteacher' => CAP_ALLOW,
4f0c2d00 1116 'manager' => CAP_ALLOW
cae83708 1117 )
1118 ),
1119
05de723b
NC
1120 'moodle/blog:associatecourse' => array(
1121
1122 'captype' => 'write',
1123 'contextlevel' => CONTEXT_COURSE,
31c93303 1124 'archetypes' => array(
05de723b
NC
1125 'student' => CAP_ALLOW,
1126 'user' => CAP_ALLOW,
1127 'teacher' => CAP_ALLOW,
1128 'editingteacher' => CAP_ALLOW,
4f0c2d00 1129 'manager' => CAP_ALLOW
05de723b
NC
1130 )
1131 ),
1132
1133 'moodle/blog:associatemodule' => array(
1134
1135 'captype' => 'write',
1136 'contextlevel' => CONTEXT_MODULE,
31c93303 1137 'archetypes' => array(
05de723b
NC
1138 'student' => CAP_ALLOW,
1139 'user' => CAP_ALLOW,
1140 'teacher' => CAP_ALLOW,
1141 'editingteacher' => CAP_ALLOW,
4f0c2d00 1142 'manager' => CAP_ALLOW
05de723b
NC
1143 )
1144 ),
eef868d1 1145
5a8ab2e9 1146 'moodle/calendar:manageownentries' => array( // works in CONTEXT_SYSTEM only
bbbf2d40 1147
21b6db6e 1148 'riskbitmask' => RISK_SPAM,
1149
bbbf2d40 1150 'captype' => 'write',
f432bebf 1151 'contextlevel' => CONTEXT_COURSE,
31c93303 1152 'archetypes' => array(
c785d40a 1153 'user' => CAP_ALLOW,
4f0c2d00 1154 'manager' => CAP_ALLOW
bbbf2d40 1155 )
1156 ),
eef868d1 1157
f63d2922 1158 'moodle/calendar:managegroupentries' => array(
1159
1160 'riskbitmask' => RISK_SPAM,
1161
1162 'captype' => 'write',
f432bebf 1163 'contextlevel' => CONTEXT_COURSE,
31c93303 1164 'archetypes' => array(
f63d2922 1165 'teacher' => CAP_ALLOW,
1166 'editingteacher' => CAP_ALLOW,
4f0c2d00 1167 'manager' => CAP_ALLOW
f63d2922 1168 )
1169 ),
1170
bbbf2d40 1171 'moodle/calendar:manageentries' => array(
1172
21b6db6e 1173 'riskbitmask' => RISK_SPAM,
1174
bbbf2d40 1175 'captype' => 'write',
f432bebf 1176 'contextlevel' => CONTEXT_COURSE,
31c93303 1177 'archetypes' => array(
bbbf2d40 1178 'teacher' => CAP_ALLOW,
1179 'editingteacher' => CAP_ALLOW,
4f0c2d00 1180 'manager' => CAP_ALLOW
bbbf2d40 1181 )
77d4953e 1182 ),
a044c05d 1183
1184 'moodle/user:editprofile' => array(
1185
3a0c6cca 1186 'riskbitmask' => RISK_SPAM | RISK_PERSONAL,
a044c05d 1187
1188 'captype' => 'write',
1189 'contextlevel' => CONTEXT_USER,
31c93303 1190 'archetypes' => array(
4f0c2d00 1191 'manager' => CAP_ALLOW
a044c05d 1192 )
1193 ),
eef868d1 1194
a5b8be62 1195 'moodle/user:editownprofile' => array(
1cb3da36 1196
3a0c6cca 1197 'riskbitmask' => RISK_SPAM,
1198
a5b8be62 1199 'captype' => 'write',
1200 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1201 'archetypes' => array(
1cb3da36 1202 'guest' => CAP_PROHIBIT,
1203 'user' => CAP_ALLOW,
4f0c2d00 1204 'manager' => CAP_ALLOW
a5b8be62 1205 )
1cb3da36 1206 ),
1207
a5b8be62 1208 'moodle/user:changeownpassword' => array(
1cb3da36 1209
a5b8be62 1210 'captype' => 'write',
1211 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1212 'archetypes' => array(
1cb3da36 1213 'guest' => CAP_PROHIBIT,
1214 'user' => CAP_ALLOW,
4f0c2d00 1215 'manager' => CAP_ALLOW
a5b8be62 1216 )
1cb3da36 1217 ),
1218
eef868d1 1219 // The next 3 might make no sense for some roles, e.g teacher, etc.
77d4953e 1220 // since the next level up is site. These are more for the parent role
1221 'moodle/user:readuserposts' => array(
bcdb0f19 1222
77d4953e 1223 'captype' => 'read',
4b10f08b 1224 'contextlevel' => CONTEXT_USER,
31c93303 1225 'archetypes' => array(
77d4953e 1226 'student' => CAP_ALLOW,
1227 'teacher' => CAP_ALLOW,
1228 'editingteacher' => CAP_ALLOW,
4f0c2d00 1229 'manager' => CAP_ALLOW
77d4953e 1230 )
1231 ),
eef868d1 1232
77d4953e 1233 'moodle/user:readuserblogs' => array(
bcdb0f19 1234
77d4953e 1235 'captype' => 'read',
4b10f08b 1236 'contextlevel' => CONTEXT_USER,
31c93303 1237 'archetypes' => array(
77d4953e 1238 'student' => CAP_ALLOW,
1239 'teacher' => CAP_ALLOW,
1240 'editingteacher' => CAP_ALLOW,
4f0c2d00 1241 'manager' => CAP_ALLOW
77d4953e 1242 )
1243 ),
eef868d1 1244
3c7da16d 1245 // designed for parent role - not used in legacy roles
77d4953e 1246 'moodle/user:viewuseractivitiesreport' => array(
3c7da16d 1247 'riskbitmask' => RISK_PERSONAL,
bcdb0f19 1248
77d4953e 1249 'captype' => 'read',
4b10f08b 1250 'contextlevel' => CONTEXT_USER,
31c93303 1251 'archetypes' => array(
77d4953e 1252 )
945f88ca 1253 ),
4e781c7b 1254
3b120e46 1255 //capabilities designed for the new message system configuration
1256 'moodle/user:editmessageprofile' => array(
f7c0d84b 1257
3b120e46 1258 'riskbitmask' => RISK_SPAM,
f7c0d84b 1259
3b120e46 1260 'captype' => 'write',
1261 'contextlevel' => CONTEXT_USER,
31c93303 1262 'archetypes' => array(
4f0c2d00 1263 'manager' => CAP_ALLOW
3b120e46 1264 )
1265 ),
f7c0d84b 1266
1267 'moodle/user:editownmessageprofile' => array(
1268
1269 'captype' => 'write',
1270 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1271 'archetypes' => array(
3b120e46 1272 'guest' => CAP_PROHIBIT,
1273 'user' => CAP_ALLOW,
4f0c2d00 1274 'manager' => CAP_ALLOW
f7c0d84b 1275 )
3b120e46 1276 ),
eef868d1 1277
271e6dec 1278 'moodle/question:managecategory' => array(
14d701d6 1279 'riskbitmask' => RISK_SPAM | RISK_XSS,
945f88ca 1280 'captype' => 'write',
1281 'contextlevel' => CONTEXT_COURSE,
31c93303 1282 'archetypes' => array(
945f88ca 1283 'editingteacher' => CAP_ALLOW,
4f0c2d00 1284 'manager' => CAP_ALLOW
945f88ca 1285 )
a5b8be62 1286 ),
1287
271e6dec 1288 //new in moodle 1.9
1289 'moodle/question:add' => array(
14d701d6 1290 'riskbitmask' => RISK_SPAM | RISK_XSS,
271e6dec 1291 'captype' => 'write',
1292 'contextlevel' => CONTEXT_COURSE,
31c93303 1293 'archetypes' => array(
271e6dec 1294 'editingteacher' => CAP_ALLOW,
4f0c2d00 1295 'manager' => CAP_ALLOW
271e6dec 1296 ),
1297 'clonepermissionsfrom' => 'moodle/question:manage'
945f88ca 1298 ),
271e6dec 1299 'moodle/question:editmine' => array(
14d701d6 1300 'riskbitmask' => RISK_SPAM | RISK_XSS,
271e6dec 1301 'captype' => 'write',
1302 'contextlevel' => CONTEXT_COURSE,
31c93303 1303 'archetypes' => array(
271e6dec 1304 'editingteacher' => CAP_ALLOW,
4f0c2d00 1305 'manager' => CAP_ALLOW
271e6dec 1306 ),
a5b8be62 1307 'clonepermissionsfrom' => 'moodle/question:manage'
271e6dec 1308 ),
1309 'moodle/question:editall' => array(
14d701d6 1310 'riskbitmask' => RISK_SPAM | RISK_XSS,
271e6dec 1311 'captype' => 'write',
1312 'contextlevel' => CONTEXT_COURSE,
31c93303 1313 'archetypes' => array(
271e6dec 1314 'editingteacher' => CAP_ALLOW,
4f0c2d00 1315 'manager' => CAP_ALLOW
271e6dec 1316 ),
a5b8be62 1317 'clonepermissionsfrom' => 'moodle/question:manage'
271e6dec 1318 ),
1319 'moodle/question:viewmine' => array(
945f88ca 1320 'captype' => 'read',
1321 'contextlevel' => CONTEXT_COURSE,
31c93303 1322 'archetypes' => array(
945f88ca 1323 'editingteacher' => CAP_ALLOW,
4f0c2d00 1324 'manager' => CAP_ALLOW
271e6dec 1325 ),
a5b8be62 1326 'clonepermissionsfrom' => 'moodle/question:manage'
945f88ca 1327 ),
271e6dec 1328 'moodle/question:viewall' => array(
1329 'captype' => 'read',
1330 'contextlevel' => CONTEXT_COURSE,
31c93303 1331 'archetypes' => array(
271e6dec 1332 'editingteacher' => CAP_ALLOW,
4f0c2d00 1333 'manager' => CAP_ALLOW
271e6dec 1334 ),
a5b8be62 1335 'clonepermissionsfrom' => 'moodle/question:manage'
271e6dec 1336 ),
1337 'moodle/question:usemine' => array(
1338 'captype' => 'read',
1339 'contextlevel' => CONTEXT_COURSE,
31c93303 1340 'archetypes' => array(
271e6dec 1341 'editingteacher' => CAP_ALLOW,
4f0c2d00 1342 'manager' => CAP_ALLOW
271e6dec 1343 ),
a5b8be62 1344 'clonepermissionsfrom' => 'moodle/question:manage'
271e6dec 1345 ),
1346 'moodle/question:useall' => array(
1347 'captype' => 'read',
1348 'contextlevel' => CONTEXT_COURSE,
31c93303 1349 'archetypes' => array(
271e6dec 1350 'editingteacher' => CAP_ALLOW,
4f0c2d00 1351 'manager' => CAP_ALLOW
271e6dec 1352 ),
a5b8be62 1353 'clonepermissionsfrom' => 'moodle/question:manage'
1354 ),
271e6dec 1355 'moodle/question:movemine' => array(
945f88ca 1356 'captype' => 'write',
1357 'contextlevel' => CONTEXT_COURSE,
31c93303 1358 'archetypes' => array(
945f88ca 1359 'editingteacher' => CAP_ALLOW,
4f0c2d00 1360 'manager' => CAP_ALLOW
271e6dec 1361 ),
a5b8be62 1362 'clonepermissionsfrom' => 'moodle/question:manage'
945f88ca 1363 ),
271e6dec 1364 'moodle/question:moveall' => array(
945f88ca 1365 'captype' => 'write',
1366 'contextlevel' => CONTEXT_COURSE,
31c93303 1367 'archetypes' => array(
945f88ca 1368 'editingteacher' => CAP_ALLOW,
4f0c2d00 1369 'manager' => CAP_ALLOW
271e6dec 1370 ),
a5b8be62 1371 'clonepermissionsfrom' => 'moodle/question:manage'
7191a1fa 1372 ),
271e6dec 1373 //END new in moodle 1.9
a5b8be62 1374
0eb6b04a 1375 // Configure the installed question types.
1376 'moodle/question:config' => array(
0eb6b04a 1377 'riskbitmask' => RISK_CONFIG,
0eb6b04a 1378 'captype' => 'write',
1379 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1380 'archetypes' => array(
4f0c2d00 1381 'manager' => CAP_ALLOW
0eb6b04a 1382 )
1383 ),
1384
62e76c67 1385 // While attempting questions, the ability to flag particular questions for later reference.
1386 'moodle/question:flag' => array(
1387 'captype' => 'write',
1388 'contextlevel' => CONTEXT_COURSE,
31c93303 1389 'archetypes' => array(
62e76c67 1390 'student' => CAP_ALLOW,
1391 'teacher' => CAP_ALLOW,
1392 'editingteacher' => CAP_ALLOW,
4f0c2d00 1393 'manager' => CAP_ALLOW
62e76c67 1394 )
1395 ),
bcdb0f19 1396
62e76c67 1397 'moodle/site:doclinks' => array(
7191a1fa 1398 'captype' => 'read',
1399 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1400 'archetypes' => array(
7191a1fa 1401 'teacher' => CAP_ALLOW,
1402 'editingteacher' => CAP_ALLOW,
4f0c2d00 1403 'manager' => CAP_ALLOW
7191a1fa 1404 )
3924b988 1405 ),
eef868d1 1406
3924b988 1407 'moodle/course:sectionvisibility' => array(
bcdb0f19 1408
3924b988 1409 'captype' => 'write',
1410 'contextlevel' => CONTEXT_COURSE,
31c93303 1411 'archetypes' => array(
3924b988 1412 'editingteacher' => CAP_ALLOW,
4f0c2d00 1413 'manager' => CAP_ALLOW
3924b988 1414 )
1415 ),
eef868d1 1416
dc558690 1417 'moodle/course:useremail' => array(
bcdb0f19 1418
dc558690 1419 'captype' => 'write',
1420 'contextlevel' => CONTEXT_COURSE,
31c93303 1421 'archetypes' => array(
dc558690 1422 'editingteacher' => CAP_ALLOW,
4f0c2d00 1423 'manager' => CAP_ALLOW
dc558690 1424 )
1425 ),
eef868d1 1426
3924b988 1427 'moodle/course:viewhiddensections' => array(
bcdb0f19 1428
3924b988 1429 'captype' => 'write',
1430 'contextlevel' => CONTEXT_COURSE,
31c93303 1431 'archetypes' => array(
3924b988 1432 'editingteacher' => CAP_ALLOW,
4f0c2d00 1433 'manager' => CAP_ALLOW
3924b988 1434 )
1435 ),
eef868d1 1436
3924b988 1437 'moodle/course:setcurrentsection' => array(
bcdb0f19 1438
3924b988 1439 'captype' => 'write',
1440 'contextlevel' => CONTEXT_COURSE,
31c93303 1441 'archetypes' => array(
3924b988 1442 'editingteacher' => CAP_ALLOW,
4f0c2d00 1443 'manager' => CAP_ALLOW
3924b988 1444 )
1445 ),
eef868d1 1446
ad778c84
FM
1447 'moodle/course:movesections' => array(
1448
1449 'captype' => 'write',
1450 'contextlevel' => CONTEXT_COURSE,
1451 'archetypes' => array(
1452 'editingteacher' => CAP_ALLOW,
1453 'manager' => CAP_ALLOW
1454 ),
1455 'clonepermissionsfrom' => 'moodle/course:update'
1456 ),
1457
dd45888a 1458 'moodle/site:mnetlogintoremote' => array(
bc4c9800 1459
3924b988 1460 'captype' => 'read',
dd45888a 1461 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1462 'archetypes' => array(
3924b988 1463 )
1464 ),
eef868d1 1465
dd45888a 1466 'moodle/grade:viewall' => array(
bcdb0f19 1467 'riskbitmask' => RISK_PERSONAL,
dd45888a 1468 'captype' => 'read',
eecf76df 1469 'contextlevel' => CONTEXT_COURSE, // and CONTEXT_USER
31c93303 1470 'archetypes' => array(
dd45888a 1471 'teacher' => CAP_ALLOW,
3924b988 1472 'editingteacher' => CAP_ALLOW,
4f0c2d00 1473 'manager' => CAP_ALLOW
dd45888a 1474 ),
1475 'clonepermissionsfrom' => 'moodle/course:viewcoursegrades'
f509ce06 1476 ),
f43ce1ad 1477
dd45888a 1478 'moodle/grade:view' => array(
f509ce06 1479 'captype' => 'read',
eecf76df 1480 'contextlevel' => CONTEXT_COURSE,
31c93303 1481 'archetypes' => array(
dd45888a 1482 'student' => CAP_ALLOW
f509ce06 1483 )
ca9ffa18 1484 ),
dd45888a 1485
1486 'moodle/grade:viewhidden' => array(
ca9ffa18 1487 'riskbitmask' => RISK_PERSONAL,
1488 'captype' => 'read',
eecf76df 1489 'contextlevel' => CONTEXT_COURSE,
31c93303 1490 'archetypes' => array(
0371f8e5 1491 'teacher' => CAP_ALLOW,
1492 'editingteacher' => CAP_ALLOW,
4f0c2d00 1493 'manager' => CAP_ALLOW
dd45888a 1494 ),
1495 'clonepermissionsfrom' => 'moodle/course:viewcoursegrades'
ca9ffa18 1496 ),
dd45888a 1497
1498 'moodle/grade:import' => array(
3a0c6cca 1499 'riskbitmask' => RISK_PERSONAL | RISK_XSS,
dd45888a 1500 'captype' => 'write',
ca9ffa18 1501 'contextlevel' => CONTEXT_COURSE,
31c93303 1502 'archetypes' => array(
ca9ffa18 1503 'editingteacher' => CAP_ALLOW,
4f0c2d00 1504 'manager' => CAP_ALLOW
dd45888a 1505 ),
1506 'clonepermissionsfrom' => 'moodle/course:managegrades'
ca9ffa18 1507 ),
dd45888a 1508
1509 'moodle/grade:export' => array(
ca9ffa18 1510 'riskbitmask' => RISK_PERSONAL,
1511 'captype' => 'read',
1512 'contextlevel' => CONTEXT_COURSE,
31c93303 1513 'archetypes' => array(
ca9ffa18 1514 'teacher' => CAP_ALLOW,
1515 'editingteacher' => CAP_ALLOW,
4f0c2d00 1516 'manager' => CAP_ALLOW
dd45888a 1517 ),
1518 'clonepermissionsfrom' => 'moodle/course:managegrades'
ca9ffa18 1519 ),
dd45888a 1520
1521 'moodle/grade:manage' => array(
3a0c6cca 1522 'riskbitmask' => RISK_PERSONAL | RISK_XSS,
dd45888a 1523 'captype' => 'write',
1524 'contextlevel' => CONTEXT_COURSE,
31c93303 1525 'archetypes' => array(
dd45888a 1526 'editingteacher' => CAP_ALLOW,
4f0c2d00 1527 'manager' => CAP_ALLOW
dd45888a 1528 ),
1529 'clonepermissionsfrom' => 'moodle/course:managegrades'
ca9ffa18 1530 ),
dd45888a 1531
a5b8be62 1532 'moodle/grade:edit' => array(
1533 'riskbitmask' => RISK_PERSONAL | RISK_XSS,
04259694 1534 'captype' => 'write',
1535 'contextlevel' => CONTEXT_COURSE,
31c93303 1536 'archetypes' => array(
04259694 1537 'editingteacher' => CAP_ALLOW,
4f0c2d00 1538 'manager' => CAP_ALLOW
04259694 1539 ),
1540 'clonepermissionsfrom' => 'moodle/course:managegrades'
1541 ),
1542
86e9ccfd
DM
1543 // ability to define advanced grading forms in activities either from scratch
1544 // or from a shared template
f25a5a32
DM
1545 'moodle/grade:managegradingforms' => array(
1546 'riskbitmask' => RISK_PERSONAL | RISK_XSS,
1547 'captype' => 'write',
553af5fd 1548 'contextlevel' => CONTEXT_COURSE,
f25a5a32
DM
1549 'archetypes' => array(
1550 'editingteacher' => CAP_ALLOW,
1551 'manager' => CAP_ALLOW
1552 ),
1553 'clonepermissionsfrom' => 'moodle/course:managegrades'
04259694 1554 ),
1555
86e9ccfd
DM
1556 // ability to save a grading form as a new shared template and eventually edit
1557 // and remove own templates (templates originally shared by that user)
553af5fd 1558 'moodle/grade:sharegradingforms' => array(
86e9ccfd
DM
1559 'riskbitmask' => RISK_XSS,
1560 'captype' => 'write',
1561 'contextlevel' => CONTEXT_SYSTEM,
1562 'archetypes' => array(
1563 'manager' => CAP_ALLOW
1564 ),
1565 ),
1566
1567 // ability to edit and remove any shared template, even those originally shared
1568 // by other users
1569 'moodle/grade:managesharedforms' => array(
1570 'riskbitmask' => RISK_XSS,
553af5fd
DM
1571 'captype' => 'write',
1572 'contextlevel' => CONTEXT_SYSTEM,
1573 'archetypes' => array(
1574 'manager' => CAP_ALLOW
1575 ),
1576 ),
1577
a5b8be62 1578 'moodle/grade:manageoutcomes' => array(
284abb09 1579 'captype' => 'write',
1580 'contextlevel' => CONTEXT_COURSE,
31c93303 1581 'archetypes' => array(
284abb09 1582 'editingteacher' => CAP_ALLOW,
4f0c2d00 1583 'manager' => CAP_ALLOW
284abb09 1584 ),
1585 'clonepermissionsfrom' => 'moodle/course:managegrades'
1586 ),
1587
1588 'moodle/grade:manageletters' => array(
ca9ffa18 1589 'captype' => 'write',
1590 'contextlevel' => CONTEXT_COURSE,
31c93303 1591 'archetypes' => array(
ca9ffa18 1592 'editingteacher' => CAP_ALLOW,
4f0c2d00 1593 'manager' => CAP_ALLOW
a5b8be62 1594 ),
1595 'clonepermissionsfrom' => 'moodle/course:managegrades'
ca9ffa18 1596 ),
dd45888a 1597
a5b8be62 1598 'moodle/grade:hide' => array(
ca9ffa18 1599 'captype' => 'write',
1600 'contextlevel' => CONTEXT_COURSE,
31c93303 1601 'archetypes' => array(
ca9ffa18 1602 'editingteacher' => CAP_ALLOW,
4f0c2d00 1603 'manager' => CAP_ALLOW
ca9ffa18 1604 )
1605 ),
dd45888a 1606
a5b8be62 1607 'moodle/grade:lock' => array(
dd45888a 1608 'captype' => 'write',
ca9ffa18 1609 'contextlevel' => CONTEXT_COURSE,
31c93303 1610 'archetypes' => array(
ca9ffa18 1611 'editingteacher' => CAP_ALLOW,
4f0c2d00 1612 'manager' => CAP_ALLOW
ca9ffa18 1613 )
1614 ),
dd45888a 1615
a5b8be62 1616 'moodle/grade:unlock' => array(
ca9ffa18 1617 'captype' => 'write',
1618 'contextlevel' => CONTEXT_COURSE,
31c93303 1619 'archetypes' => array(
ca9ffa18 1620 'editingteacher' => CAP_ALLOW,
4f0c2d00 1621 'manager' => CAP_ALLOW
ca9ffa18 1622 )
282c1695 1623 ),
dd45888a 1624
1625 'moodle/my:manageblocks' => array(
282c1695 1626 'captype' => 'write',
1627 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1628 'archetypes' => array(
282c1695 1629 'user' => CAP_ALLOW
1630 )
eca3af25 1631 ),
dd45888a 1632
eca3af25 1633 'moodle/notes:view' => array(
1634 'captype' => 'read',
f432bebf 1635 'contextlevel' => CONTEXT_COURSE,
31c93303 1636 'archetypes' => array(
eca3af25 1637 'teacher' => CAP_ALLOW,
1638 'editingteacher' => CAP_ALLOW,
4f0c2d00 1639 'manager' => CAP_ALLOW
eca3af25 1640 )
1641 ),
1642
1643 'moodle/notes:manage' => array(
3a0c6cca 1644 'riskbitmask' => RISK_SPAM,
1645
eca3af25 1646 'captype' => 'write',
f432bebf 1647 'contextlevel' => CONTEXT_COURSE,
31c93303 1648 'archetypes' => array(
eca3af25 1649 'teacher' => CAP_ALLOW,
1650 'editingteacher' => CAP_ALLOW,
4f0c2d00 1651 'manager' => CAP_ALLOW
eca3af25 1652 )
dd45888a 1653 ),
79642064 1654
1655 'moodle/tag:manage' => array(
3a0c6cca 1656 'riskbitmask' => RISK_SPAM,
1657
79642064 1658 'captype' => 'write',
1659 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1660 'archetypes' => array(
79642064 1661 'teacher' => CAP_ALLOW,
1662 'editingteacher' => CAP_ALLOW,
4f0c2d00 1663 'manager' => CAP_ALLOW
79642064 1664 )
705789bd 1665 ),
1666
1667 'moodle/tag:create' => array(
3a0c6cca 1668 'riskbitmask' => RISK_SPAM,
1669
705789bd 1670 'captype' => 'write',
1671 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1672 'archetypes' => array(
4f0c2d00 1673 'manager' => CAP_ALLOW,
0f07c40e 1674 'user' => CAP_ALLOW
705789bd 1675 )
1676 ),
a5b8be62 1677
705789bd 1678 'moodle/tag:edit' => array(
3a0c6cca 1679 'riskbitmask' => RISK_SPAM,
1680
705789bd 1681 'captype' => 'write',
1682 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1683 'archetypes' => array(
4f0c2d00 1684 'manager' => CAP_ALLOW,
3e6e529f 1685 'user' => CAP_ALLOW
98b5789d 1686 )
1687 ),
a5b8be62 1688
7dd764b8
JG
1689 'moodle/tag:flag' => array(
1690 'riskbitmask' => RISK_SPAM,
1691
1692 'captype' => 'write',
1693 'contextlevel' => CONTEXT_SYSTEM,
1694 'archetypes' => array(
1695 'manager' => CAP_ALLOW,
1696 'user' => CAP_ALLOW
1697 )
1698 ),
1699
98b5789d 1700 'moodle/tag:editblocks' => array(
1701 'captype' => 'write',
1702 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1703 'archetypes' => array(
705789bd 1704 'teacher' => CAP_ALLOW,
1705 'editingteacher' => CAP_ALLOW,
4f0c2d00 1706 'manager' => CAP_ALLOW
705789bd 1707 )
7e874772 1708 ),
1709
1710 'moodle/block:view' => array(
1711 'captype' => 'read',
1712 'contextlevel' => CONTEXT_BLOCK,
31c93303 1713 'archetypes' => array(
7e874772 1714 'guest' => CAP_ALLOW,
25a7d980 1715 'user' => CAP_ALLOW,
1716 'student' => CAP_ALLOW,
1717 'teacher' => CAP_ALLOW,
1718 'editingteacher' => CAP_ALLOW,
7e874772 1719 )
8512f577 1720 ),
1721
d14edf06 1722 'moodle/block:edit' => array(
1723 'riskbitmask' => RISK_SPAM | RISK_XSS,
1724
1725 'captype' => 'write',
1726 'contextlevel' => CONTEXT_BLOCK,
31c93303 1727 'archetypes' => array(
d14edf06 1728 'editingteacher' => CAP_ALLOW,
586e7976 1729 'manager' => CAP_ALLOW
d14edf06 1730 )
1731 ),
1732
8512f577 1733 'moodle/portfolio:export' => array(
1734 'captype' => 'read',
1735 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1736 'archetypes' => array(
8512f577 1737 'user' => CAP_ALLOW,
1738 'student' => CAP_ALLOW,
1739 'teacher' => CAP_ALLOW,
1740 'editingteacher' => CAP_ALLOW,
8512f577 1741 )
1bcb7eb5 1742 ),
1743 'moodle/comment:view' => array(
1bcb7eb5 1744 'captype' => 'read',
ad0ae261 1745 'contextlevel' => CONTEXT_COURSE,
31c93303 1746 'archetypes' => array(
b3da2877
SH
1747 'frontpage' => CAP_ALLOW,
1748 'guest' => CAP_ALLOW,
1bcb7eb5 1749 'user' => CAP_ALLOW,
1750 'student' => CAP_ALLOW,
1751 'teacher' => CAP_ALLOW,
1752 'editingteacher' => CAP_ALLOW,
4f0c2d00 1753 'manager' => CAP_ALLOW
1bcb7eb5 1754 )
1755 ),
1756 'moodle/comment:post' => array(
1757
1758 'riskbitmask' => RISK_SPAM | RISK_PERSONAL,
1759 'captype' => 'write',
ad0ae261 1760 'contextlevel' => CONTEXT_COURSE,
31c93303 1761 'archetypes' => array(
1bcb7eb5 1762 'user' => CAP_ALLOW,
1763 'student' => CAP_ALLOW,
1764 'teacher' => CAP_ALLOW,
1765 'editingteacher' => CAP_ALLOW,
4f0c2d00 1766 'manager' => CAP_ALLOW
1bcb7eb5 1767 )
1768 ),
1769 'moodle/comment:delete' => array(
1770
1771 'riskbitmask' => RISK_DATALOSS,
1772 'captype' => 'write',
ad0ae261 1773 'contextlevel' => CONTEXT_COURSE,
31c93303 1774 'archetypes' => array(
1bcb7eb5 1775 'editingteacher' => CAP_ALLOW,
4f0c2d00 1776 'manager' => CAP_ALLOW
1bcb7eb5 1777 )
5eacbd4b 1778 ),
1779 'moodle/webservice:createtoken' => array(
1780
52dd27bf 1781 'riskbitmask' => RISK_CONFIG | RISK_DATALOSS | RISK_SPAM | RISK_PERSONAL | RISK_XSS,
5eacbd4b 1782 'captype' => 'write',
1783 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1784 'archetypes' => array(
4f0c2d00 1785 'manager' => CAP_ALLOW
5eacbd4b 1786 )
a09aeee4 1787 ),
13ea96c4
DC
1788 'moodle/webservice:createmobiletoken' => array(
1789
f2eac756 1790 'riskbitmask' => RISK_SPAM | RISK_PERSONAL,
13ea96c4
DC
1791 'captype' => 'write',
1792 'contextlevel' => CONTEXT_SYSTEM,
1793 'archetypes' => array(
1794 'user' => CAP_ALLOW
1795 )
1796 ),
19fae119 1797 'moodle/rating:view' => array(
ad0ae261 1798
a09aeee4 1799 'captype' => 'read',
ad0ae261 1800 'contextlevel' => CONTEXT_COURSE,
31c93303 1801 'archetypes' => array(
ad0ae261 1802 'user' => CAP_ALLOW,
e116a818
AD
1803 'student' => CAP_ALLOW,
1804 'teacher' => CAP_ALLOW,
1805 'editingteacher' => CAP_ALLOW,
4f0c2d00 1806 'manager' => CAP_ALLOW
a09aeee4
AD
1807 )
1808 ),
6595a568 1809 'moodle/rating:viewany' => array(
ad0ae261 1810
6595a568
MD
1811 'riskbitmask' => RISK_PERSONAL,
1812 'captype' => 'read',
ad0ae261 1813 'contextlevel' => CONTEXT_COURSE,
31c93303 1814 'archetypes' => array(
ad0ae261 1815 'user' => CAP_ALLOW,
6595a568
MD
1816 'student' => CAP_ALLOW,
1817 'teacher' => CAP_ALLOW,
1818 'editingteacher' => CAP_ALLOW,
1819 'manager' => CAP_ALLOW
1820 )
1821 ),
19fae119 1822 'moodle/rating:viewall' => array(
ad0ae261 1823
a09aeee4
AD
1824 'riskbitmask' => RISK_PERSONAL,
1825 'captype' => 'read',
ad0ae261 1826 'contextlevel' => CONTEXT_COURSE,
31c93303 1827 'archetypes' => array(
ad0ae261 1828 'user' => CAP_ALLOW,
6595a568 1829 'student' => CAP_ALLOW,
e116a818
AD
1830 'teacher' => CAP_ALLOW,
1831 'editingteacher' => CAP_ALLOW,
4f0c2d00 1832 'manager' => CAP_ALLOW
a09aeee4
AD
1833 )
1834 ),
19fae119 1835 'moodle/rating:rate' => array(
ad0ae261 1836
a09aeee4 1837 'captype' => 'write',
ad0ae261 1838 'contextlevel' => CONTEXT_COURSE,
31c93303 1839 'archetypes' => array(
ad0ae261 1840 'user' => CAP_ALLOW,
6595a568 1841 'student' => CAP_ALLOW,
e116a818
AD
1842 'teacher' => CAP_ALLOW,
1843 'editingteacher' => CAP_ALLOW,
4f0c2d00 1844 'manager' => CAP_ALLOW
a09aeee4 1845 )
07ab0c80 1846 ),
1847 'moodle/course:publish' => array(
1848
07ab0c80 1849 'captype' => 'write',
ad0ae261 1850 'riskbitmask' => RISK_SPAM | RISK_PERSONAL,
07ab0c80 1851 'contextlevel' => CONTEXT_SYSTEM,
31c93303 1852 'archetypes' => array(
07ab0c80 1853 'manager' => CAP_ALLOW
1854 )
2be4d090
MD
1855 ),
1856 'moodle/course:markcomplete' => array(
1857 'captype' => 'write',
1858 'contextlevel' => CONTEXT_COURSE,
31c93303 1859 'archetypes' => array(
2be4d090
MD
1860 'teacher' => CAP_ALLOW,
1861 'editingteacher' => CAP_ALLOW,
2be4d090
MD
1862 'manager' => CAP_ALLOW
1863 )
755f96f8 1864 ),
1865 'moodle/community:add' => array(
1866 'captype' => 'write',
1867 'contextlevel' => CONTEXT_SYSTEM,
1868 'archetypes' => array(
1869 'manager' => CAP_ALLOW,
1870 'teacher' => CAP_ALLOW,
17957b8f 1871 'editingteacher' => CAP_ALLOW,
755f96f8 1872 )
1873 ),
1874 'moodle/community:download' => array(
1875 'captype' => 'write',
1876 'contextlevel' => CONTEXT_SYSTEM,
1877 'archetypes' => array(
1878 'manager' => CAP_ALLOW,
17957b8f 1879 'editingteacher' => CAP_ALLOW,
755f96f8 1880 )
79642064 1881 )
bbbf2d40 1882);