MRBS block

From MoodleDocs

MRBS Block

TheCblock integrates the MRBS project ( by using Moodle functions to authenticate. While initially designed to work with Moodle 1.6 as a single sign on integration, later work made the MRBS project a contributed Moodle block.

Stephen Bourget was kind enough to work on some changes to prepare the MRBS block to take advantage of roles and for use with Moodle 1.7 and beyond. Furthermore, a recently discovered SQL injection vulnerability in the MRBS application was patched. As a result, the MRBS integration/block is no longer supported or maintained for versions prior to Moodle 1.7.

As with any customization, it is recommended that you have a good backup of your Moodle site before attempting to install contributed code. While those contributing code make every effort to provide the best code that they can, using contributed code nevertheless entails a certain degree of risk as contributed code is not as carefully reviewed and/or tested as the Moodle core code.

MRBS is useful for scheduling a variety of resources. More information about MRBS can be obtained at As distributed here it is setup for periods; however, this can easily be changed to times by modifying the file.


  • Code - Copy the files into your Moodle blocks folder ($CFG->dirroot/blocks)
  • Database - Login in as a Moodle Administrator and go to the Administration notifications page to create the MRBS tables
  • Capabilities - The MRBS block is primarily intended for use on the Moodle front page. Privileges to use the scheduler are currently based on three custom defined capabilities:
  1. block/mrbs:administermrbs
  2. block/mrbs:editmrbs
  3. block/mrbs:viewmrbs
    • While these capabilities are created automatically, the system roles are not. As such, it is recommended that you create three system wide roles by:
  1. Login as the Site administrator
  2. Go to the Site Administration block
  3. Click on Users -> Permissions -> Define Roles
  4. Click on the 'Add a new role' pushbutton
  5. Fill in the Name, Short name, and description fields with MRBS Administrator, MRBS Scheduler, or MRBS Viewer depending on the role you are creating.
  6. Under Permissions set the capability to allow for the respective role (i.e. block/mrbs:administermrbs for the MRBS Administrator role, block/mrbs:editmrbs for the MRBS Scheduler role, and block/mrbs:viewmrbs for the MRBS Viewer role).
  7. Scroll down to the bottom and click on the 'Add a new role' (or 'Save changes' if editing the role) pushbutton.
  8. Once the roles are created, go to Site Administration block, click on Frontpage -> Frontpage roles and assign users to the appropriate/desired roles.
    • Typically, teachers get assigned as MRBS Schedulers and students as MRBS Viewers. Keep in mind that no assignment is equivalent to MRBS Viewers. Site administrators have the option of making the MRBS Calendar viewable to guests and non-logged in users. To force users to login in order to view the MRBS Calendar:
  1. Login as the site administrator
  2. Go to the Site Administration block under Security -> Site Policies
  3. Enable the 'Force users to login' setting

Suggested configuration rules

Not following these suggestions will not totally break mrbs, but will prevent some features working optimally.

  • Where bookings are for courses, the booking name should match the shortname of the course
  • Rooms should be described such that:
    • All teaching rooms include the word 'teaching' in their description
    • IT teaching rooms should have 'Teaching IT' in their description
    • Teaching rooms that are not suitable for general teaching (i.e. tech workshops) should have 'special' in their names.


Thanks to the generosity of translators, the MRBS Block is available in:

If you would like to supply translations for other languages, please create an issue in the tracker and attach a zip file of the language files.

Extra Moodle MRBS Features


The MRBS Block was contributed and maintained by Mike Worth and Anthony Borrow. As of December 2011, the block is now maintained by Davo Smith at Synergy Learning. More information about the MRBS Block is available at:

The block was originally contributed by Anthony Borrow; however, Mike Worth has done significant work on new features for the MRBS block, and has graciously taken on the role of co-maintainer. More details about these new features are available at: