Being open source, Moodle is an incredibly versatile platform and this is very helpful when building unique projects such as a Parents’ Evening booking plugin.
The main challenge of this project is for parents to be able to make a booking in a manner where information is entered into the system but not disclosed while accessible through a pin code. To facilitate this process, a pin code is sent to parents in a letter from the College through the mail.
The actual booking plugin has been really fun to write (a bit like a puzzle in many ways) because I’ve needed to build complementary interfaces for the Administration team to delete double bookings (looped back into the main booking code) and provide them with live updates. This enables them to see who has booked, aiding in answering any questions from parents. While complicated, I like linking data entry interfaces together and feel it adds a lot of value to processes when there are a variety of different stakeholders.
Finally, I needed to build a printable list for the Administration team to provide to lecturers so that they know who will turn up and can then prepare in advance for the meetings.
The tricky part of designing the booking system came from the handling of available slots. I needed to know if someone has booked to see a lecturer and then eliminate this option for the next parents. The solution was quite straight forward by building a double lookup function to check the lecturer credentials and the time allocated but as per usual, I had to find an incredibly efficient way of doing this while working within Moodle’s APIs which isn’t always as straight forward as you would think.
Update: Parents’ Evening bookings have been working well and improved upon for two years now. It's great to see how the system has been adopted as a time saving solution by the College freeing up Administration staff to complete other duties where previously, they were primarily taking bookings through telephone calls.