Scheduler Module capabilities
The behavior of Scheduler can be customized by setting various capabilities at the activity level.
Student side
mod/scheduler:viewslots
View appointments that are available for booking. This allows a user to view the student screen of Scheduler and to view any appointments that would be available for booking (i.e., which have free capacity available and fall within relevant time limits). The capability does not allow students to actually book a slot; for this, see #mod/scheduler:appoint below.
mod/scheduler:viewfullslots
Allows students to see slots in the future even if they are already fully booked. This is not enabled by default or the student role, and needs to be set in addition to #mod/scheduler:viewslots.
mod/scheduler:appoint
Book an appointment which has been offered by a teacher, using the student screen. This is useful only for users that have the #mod/scheduler:viewslots capability.
mod/scheduler:seeotherstudentsbooking
See which other students have booked a slot. This applies both to slots which the current student has booked, and to slots which are displayed to the student for booking.
mod/scheduler:seeotherstudentsresults
See other slot student's results (grade), in slots which the current student has booked an appointment.
Teacher side
mod/scheduler:manage
Create and manage your own slots and appointments. This capability allows a user to see the teacher screen, to create slots for themself (and offer them to students), and to edit these slots afterwards.
mod/scheduler:attend
Users with this permission are able to be the "Teacher" for an appointment slot and meet with students.
mod/scheduler:manageallappointments
Manage all scheduler data, in particular slots for other teachers.
mod/scheduler:canscheduletootherteachers
Schedule appointments for other staff members. This is valuable when a third-party staff member (e.g., an administrator) has to set up appointments for other teachers.
mod/scheduler:canseeotherteachersbooking
Browse other teachers' appointments. See also #mod/scheduler:seeoverviewoutsideactivity below.
mod/scheduler:seeoverviewoutsideactivity
Use the overview screen in order to see data from other staff members. In the overview screen, users can access data not only from the current scheduler, but from all schedulers they (or others) have offered slots in. Access control used in that screen does not always perfectly match Moodle's fine-grained permissions system (for example, it would not take into account whether teachers are enrolled in the relevant other courses, or whether activities there are hidden). To accommodate this, teachers are allowed to see data "outside the current activity" only if they have the mod/scheduler:seeoverviewoutsideactivity capability. The default teacher role does have this capability, but if you believe it leads to problems in your installation, you can revoke it.
Given "mod/scheduler:seeoverviewoutsideactivity", teachers always see their own bookings in any scope. However, for seeing other teachers' bookings they would need the following additional permissions:
- "In this scheduler": #mod/scheduler:canseeotherteachersbooking at the level of the present scheduler
- "In this course": mod/scheduler:canseeotherteachersbooking at the level of the present course
- "Anywhere": mod/scheduler:canseeotherteachersbooking at site level
In typical setups, this means that a teacher can see all bookings in the current course, whereas a site admin would see all bookings at site level.
mod/scheduler:editallgrades
Edit grades in appointments of any teacher, using the appointment screen. (Note that users with the #mod/scheduler:manageallappointments capability can edit all grades as well.)
mod/scheduler:editallnotes
Edit all appointment-related notes in appointments of any teacher, using the appointment screen. (Note that users with the #mod/scheduler:manageallappointments capability can edit all notes as well.)
mod/scheduler:editallattended
Mark or unmark students as attended in appointments of any teacher, using the checkboxes in the "All appointments" screen or in individual appointment screens. (Note that users with the #mod/scheduler:manageallappointments capability can mark/unmark students as attended as well.)