Note: I no longer maintain this system as I moved schools mid-2011. This post was written on January 4th 2011.
I have spent the past 3 years heavily modifying our installation of Moodle. This is a showcase of the new capabilities I have added to our site. Our site is still using 1.9 as the changes are not compatible with Moodle 2.
The main modifications consist of 3 parts:
- Design
- Reward System
- Electronic Attendance
Design
I adapted the ‘Round Corners’ CSS theme to match it with the St Andrews colour scheme. I also added a HTML table to the homepage to make it easy for students (and teachers) to find their way around the site.
Whole School Reward System
Students at my school can receive ‘credits’ for their academic achievements, or ‘House Points” for their achievement outside of the classroom. However, there is a quirk – a credit is automatically counted as a house point, but the opposite is not true. I used the following 3rd party plugins as a basis for my customisation work:
- ‘Quickfind User List‘ block
- ‘Stamp Collection‘ module
- and I created a block, which I named… ‘Credits’.
Teachers are now able to quickly award credits/house points, certificates of achievement are produced automatically, and graphical representation of credits is available to teachers. One of the students’ favourites is the automatically updated ‘House Points’ tally on the homepage – a great motivator!
Here is a bunch of screenshots showcasing the capabilities of the system I created. Let me know if you’d be interested in knowing more, or if you’d like something similar for your Moodle installation.
![]() |
![]() |
![]() |
Teacher selects a student | List narrows down as more letters are entered | Teacher enters a reason for adding the point(s) |
![]() |
![]() |
![]() |
A graphical report for all of the credits | Top tens, for rewards during assemblies, etc. | A report per class/tutor group |
![]() |
![]() |
![]() |
An individual report | This is what students see | A student’s own ‘credits’ page |
Electronic attendance
The attendance is taken twice a day at my current school, during morning & afternoon registration periods. Teachers have a lot to do during those short periods and attendance taking must be prompt and not confusing.
Attendance is serious business; Senior Management needs to see at a glance whether there is any truancy, what the overall attendance looks like, etc. The office staff have the obligation to keep attendance records indefinitely, and have always up-to date attendance lists in case fire (or other disaster) strikes, and finally tutors need accurate numbers for any communication with parents.
I used the ‘Attendance‘ module as a starting point for my work.
Again, here are some screenshots showing you the main functions of my developments.
![]() |
![]() |
![]() |
Teacher is automatically directed to the correct session/group | The ‘Attendance’ page | Navigation |
![]() |
![]() |
![]() |
Teacher is presented with unauthorized absence | Statistics page | Individual student report – Overview |
![]() |
![]() |
![]() |
Individual studentreport – Detail | All teachers receive an automatic email showing absentees | Senior management receive an automatic email in case attendance is not taken |
![]() |
![]() |
![]() |
Teachers and SMT can view detailed reports for each tutor group | SMT can filter results in reports | List of absentees – automatically updated |