MDL-49796 assign: New external function view_grading_table
[moodle.git] / mod / assign / db / services.php
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/>.
17 /**
18  * Web service for mod assign
19  * @package    mod_assign
20  * @subpackage db
21  * @since      Moodle 2.4
22  * @copyright  2012 Paul Charsley
23  * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
24  */
26 $functions = array(
28         'mod_assign_get_grades' => array(
29                 'classname'   => 'mod_assign_external',
30                 'methodname'  => 'get_grades',
31                 'classpath'   => 'mod/assign/externallib.php',
32                 'description' => 'Returns grades from the assignment',
33                 'type'        => 'read'
34         ),
36         'mod_assign_get_assignments' => array(
37                 'classname'   => 'mod_assign_external',
38                 'methodname'  => 'get_assignments',
39                 'classpath'   => 'mod/assign/externallib.php',
40                 'description' => 'Returns the courses and assignments for the users capability',
41                 'type'        => 'read'
42         ),
44         'mod_assign_get_submissions' => array(
45                 'classname' => 'mod_assign_external',
46                 'methodname' => 'get_submissions',
47                 'classpath' => 'mod/assign/externallib.php',
48                 'description' => 'Returns the submissions for assignments',
49                 'type' => 'read'
50         ),
52         'mod_assign_get_user_flags' => array(
53                 'classname' => 'mod_assign_external',
54                 'methodname' => 'get_user_flags',
55                 'classpath' => 'mod/assign/externallib.php',
56                 'description' => 'Returns the user flags for assignments',
57                 'type' => 'read'
58         ),
60         'mod_assign_set_user_flags' => array(
61                 'classname'   => 'mod_assign_external',
62                 'methodname'  => 'set_user_flags',
63                 'classpath'   => 'mod/assign/externallib.php',
64                 'description' => 'Creates or updates user flags',
65                 'type'        => 'write',
66                 'capabilities'=> 'mod/assign:grade'
67         ),
69         'mod_assign_get_user_mappings' => array(
70                 'classname' => 'mod_assign_external',
71                 'methodname' => 'get_user_mappings',
72                 'classpath' => 'mod/assign/externallib.php',
73                 'description' => 'Returns the blind marking mappings for assignments',
74                 'type' => 'read'
75         ),
77         'mod_assign_revert_submissions_to_draft' => array(
78                 'classname' => 'mod_assign_external',
79                 'methodname' => 'revert_submissions_to_draft',
80                 'classpath' => 'mod/assign/externallib.php',
81                 'description' => 'Reverts the list of submissions to draft status',
82                 'type' => 'write'
83         ),
85         'mod_assign_lock_submissions' => array(
86                 'classname' => 'mod_assign_external',
87                 'methodname' => 'lock_submissions',
88                 'classpath' => 'mod/assign/externallib.php',
89                 'description' => 'Prevent students from making changes to a list of submissions',
90                 'type' => 'write'
91         ),
93         'mod_assign_unlock_submissions' => array(
94                 'classname' => 'mod_assign_external',
95                 'methodname' => 'unlock_submissions',
96                 'classpath' => 'mod/assign/externallib.php',
97                 'description' => 'Allow students to make changes to a list of submissions',
98                 'type' => 'write'
99         ),
101         'mod_assign_save_submission' => array(
102                 'classname' => 'mod_assign_external',
103                 'methodname' => 'save_submission',
104                 'classpath' => 'mod/assign/externallib.php',
105                 'description' => 'Update the current students submission',
106                 'type' => 'write'
107         ),
109         'mod_assign_submit_for_grading' => array(
110                 'classname' => 'mod_assign_external',
111                 'methodname' => 'submit_for_grading',
112                 'classpath' => 'mod/assign/externallib.php',
113                 'description' => 'Submit the current students assignment for grading',
114                 'type' => 'write'
115         ),
117         'mod_assign_save_grade' => array(
118                 'classname' => 'mod_assign_external',
119                 'methodname' => 'save_grade',
120                 'classpath' => 'mod/assign/externallib.php',
121                 'description' => 'Save a grade update for a single student.',
122                 'type' => 'write'
123         ),
125         'mod_assign_save_grades' => array(
126                 'classname' => 'mod_assign_external',
127                 'methodname' => 'save_grades',
128                 'classpath' => 'mod/assign/externallib.php',
129                 'description' => 'Save multiple grade updates for an assignment.',
130                 'type' => 'write'
131         ),
133         'mod_assign_save_user_extensions' => array(
134                 'classname' => 'mod_assign_external',
135                 'methodname' => 'save_user_extensions',
136                 'classpath' => 'mod/assign/externallib.php',
137                 'description' => 'Save a list of assignment extensions',
138                 'type' => 'write'
139         ),
141         'mod_assign_reveal_identities' => array(
142                 'classname' => 'mod_assign_external',
143                 'methodname' => 'reveal_identities',
144                 'classpath' => 'mod/assign/externallib.php',
145                 'description' => 'Reveal the identities for a blind marking assignment',
146                 'type' => 'write'
147         ),
149         'mod_assign_view_grading_table' => array(
150                 'classname'     => 'mod_assign_external',
151                 'methodname'    => 'view_grading_table',
152                 'classpath'     => 'mod/assign/externallib.php',
153                 'description'   => 'Simulate the web interface grading table view',
154                 'type'          => 'write',
155                 'capabilities'  => 'mod/assign:view, mod/assign:viewgrades'
156         ),
158 );