Scheduler

Activities ::: mod_scheduler
Maintained by Henning Bostelmann
An appointment scheduler for planning face-to-face meetings between teachers and students. Teachers can set up time slots, and students can choose one of these on Moodle.
Latest release:
5638 sites
1k downloads
188 fans
Current versions available: 10

The Scheduler module helps you in scheduling appointments with your students. Teachers specify time slots for meetings, students then choose one of them on Moodle. Teachers in turn can record the outcome of the meeting - and optionally a grade - within the scheduler.

Group scheduling is supported; that is, each time slot can accomodate several students, and optionally it is possible to schedule appointments for entire groups at the same time.

Please note that minor updates to this module will normally be released on github only.

For help and discussion about the module, including feature requests etc., please use the Scheduler forum on moodle.org or the bug tracker. Please don't use the comment section below for that, queries might go unanswered.

For an earlier version supporting Moodle up to release 1.9, see the Scheduler 1.9 module.


Screenshots

Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4

Contributors

Henning Bostelmann (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Comments

  • Henning Bostelmann
    Tue, 16 May 2017, 5:55 PM
    Hi Kevin,
    the paging bar is generated towards the end of studentview.php, where it says "echo $output->paging_bar(...".
  • Retired General
    Tue, 16 May 2017, 9:19 PM
    Hi Henning and Developers,

    Thank you for the response again. I think I didn't make myself clear, what I want is to disable the paginator so the entire slots appear on one page. Currently, my paginator shows 10 pages and if I delete "echo $output->paging_bar(...", I am still on the first page. It looks like "echo $output->render($booker);" has some kind of function that divides slots into each page. How would I change the code in "echo $output->render($booker);" so I can see all the slots in one page?

    Thank you again!
  • Henning Bostelmann
    Wed, 17 May 2017, 4:07 AM
    Yes, certainly. All you've done so far is hiding the paging bar. If you want to change the size of the pages itself, you would need to change the variable $pagesize (where it currently says "$pagesize = 25;"). Set it to a very large value.
  • Sebastien Jaffredo
    Wed, 17 May 2017, 9:48 AM
    Hi Henning

    I'm using 3.1.0.
    Regarding "maxstudentlistsize": currently if the student number is higher than this value, no list is displayed. Will it be possible in future versions to actually display a student list, with a number of displayed students equal to this value, and a page bar to navigate between pages?

    Thanks and regards,

    Sébastien
  • Henning Bostelmann
    Wed, 17 May 2017, 6:15 PM
    Hi Sebastien, I'm not currently planning that but you may want to add it to the list of feature requests on the Tracker. The "maxstudentlistsize" was really meant as a stop-gap for situations where schedulers appear e.g. in the global site context and may have thousands of potential participants, and where displaying the list would be extremely slow.
  • Sebastien Jaffredo
    Wed, 17 May 2017, 8:05 PM
    Hi Henning,
    Thanks for your answer, I created the request :
    https://tracker.moodle.org/browse/CONTRIB-6902?jql=project%20%3D%20CONTRIB%20AND%20component%20%3D%20%22Module%3A%20Scheduler%22
    Anyone interested in this feature, please make sure to vote for it.
  • Retired General
    Thu, 18 May 2017, 1:33 AM
    Hi Henning and Developers,

    Thank you for reading this post. I have a simple questions, for "teacherview.php", for the line "echo $output->render($slotman);", what is the function in "scheduler_instance.php" that extracts the data from the database? Note that this is teacher view.

    Thank you again!
  • Retired General
    Thu, 18 May 2017, 10:13 PM
    Hi Henning and Developers,

    Sorry to bother you again. For function "get_slots_available_to_student" inside "scheduler_instance.php", what is the name of the table (or names of the tables) in the database ($DB) you are accessing? Sorry it doesn't say which table it is accessing in the code.

    Thank you!
  • Amr Al Kudeh
    Fri, 19 May 2017, 10:55 PM
    Hi Henning again smile,

    Thank you very much for fixing the bug with the deleting of the selected slots.

    We were testing scheduler under Moodle 3.2, and we came across another bug.

    The bug will appear when the teacher is trying to give one time slot for a group of students. When the students book this slots, the teacher will get a conflict message telling him to check the ignore conflict button, but eventually he will get 2 slots with the same time and with the same number of students, which means if the teacher is trying to give a slot for 3 students, he will have 2 slots with the same time and 6 students can book those slots.

    I hope, that i explained the bug well.

    Thank you very much!
  • Henning Bostelmann
    Wed, 24 May 2017, 4:18 AM
    @Kevin Lu:
    The code that is responsible for these database queries can be found in mod/scheduler/model/scheduler_instance.php . This is quite a long file, but it is crucial to understanding how Scheduler works; you may want to read it in more detail. Have a look in particular at the methods fetch_slots() and get_slots_for_teacher().
  • Henning Bostelmann
    Wed, 24 May 2017, 4:22 AM
    @Amr Al Kudeh
    Thanks for mentioning this. I have created an entry for this on the bug tracker, see CONTRIB-6908 . I think I don't understand the bug fully yet and would need some more information. Please comment on the bug tracker if you can.
  • Retired General
    Tue, 6 June 2017, 12:05 AM
    Hi Henning and developers,

    Thank you for answering my questions. I have a question about "Add Single Slot" under Add Slots tab button. Which php file is it that displays the html code? I need to add a Javascript function to it so I need to know the name of the php file that displays the html code.

    Also, for the Save button, which file generates that Save button?

    Thank you!
  • Retired General
    Tue, 6 June 2017, 3:32 AM
    Hi Henning and developers,

    On teacherview.php, under "View : Update single slot form" in line 138, what is the variable that I can use in order to access this slot's location and enrolled users (teacher and students)?

    Thank you again!
  • Henning Bostelmann
    Tue, 13 June 2017, 2:35 AM
    Hi Kevin, the form is generated using Moodle's formslib, which you can read more about here: https://docs.moodle.org/dev/lib/formslib.php
    Within Scheduler, see "slotforms.php".

    Regarding your second question, this would be the variable $slot. It's an object type, so you would get the location with $slot->appointmentlocation , for example. You can get a list of all appointments with $slot->get_appointments() (see documentation in model/scheduler_slot.php).
  • Retired General
    Wed, 14 June 2017, 11:37 PM
    Hi Henning,

    Thank you for your response. I have a quick question. Is it possible to get the scheduler's name located in the tab in the right side? For example, in the tab, I have Summer Courses, Winter Courses and Spring Courses as scheduler name, is there a place in the code that I can retrieve the name? I am doing it because I need to identify which scheduler I am in so I can make changes to slots.

    Thanks!
Please login to post comments