I was asked by our new Library Director to find an alternative to our now out-of-date and somewhat cumbersome room/resource booking software. The software would need to allow staff to book various rooms, ICT resources, labs and mobile notebook trolleys throughout the school. A quick search came up with a number of positive reviews for MRBS as a school resource booking solution so I decided to try it out.
The prerequisites for MRBS are as follows:
- PHP 4/5
- MySQL or PostgreSQL
- A web server (such as Apache) that supports PHP
- PHP-LDAP Modules (optional for LDAP authentication)
Luckily enough I already had an Ubuntu Linux production server in place with these prerequisites installed so I was ready to go. The install process is as follows:
- Extract the contents of the MRBS.tar.gz file to your web servers storage folder (ie: Apache – htdocs, IIS -inetpub)
- Create a mrbs database in MySQL
CREATE DATABASE `mrbs` ; - Create the database table structure using the supplied tables.my.sql script
(Optional: Add sample data to the database using the supplied sample-data.sql script) - You must enter a timezone into the config.inc.php file before the system will function (ie: $timezone = “Sydney/Australia;)
At this point the system is ready to use. However, I recommend a few extra steps for ease of use in a school environment:
Enable period view and define school periods:
The default view for MRBS is time slots. Generally schools work to periods not time slots so a period view has been included in MRBS.
To enable the period view:
- Include the following line of code in your config.inc.php file:
$enable_periods = TRUE; - Define the periods in the config.inc.php file. Example:
- $periods[] = “Before School”;
$periods[] = “Mentor”;
$periods[] = “Period 1″;
$periods[] = “Period 2″;
$periods[] = “Recess”;And so on…
Activate LDAP authentication:
We endeavor to provide a single-sign-on environment for our staff and students which means that LDAP authentication is a must have for any system that we implement into our network. This process was by far the hardest part of the MRBS install and took my colleague and I sometime to complete mainly due to the PHP-LDAP modules.
To enable LDAP authentication:
- Install PHP-LDAP modules
I am not going to go into installing these modules in this post but am happy to lend a hand if you need help getting these working. - Define LDAP authentication commands in the config.inc.php file. Example:
$auth['only_admin_can_book_repeat'] = TRUE;$auth["type"] = “ldap”;$ldap_host = “yourdomain.com.au”;
$ldap_port = 389;
$ldap_v3 = true;
$ldap_tls = false;
$ldap_base_dn = “ou=Users,dc=yourdomain,dc=com,dc=au”;
$ldap_user_attrib = “sAMAccountName”;
$ldap_dn_search_dn = “cn=Admin,ou=Users,dc=yourdomain,dc=com,dc=au”;
$ldap_dn_search_attrib = “sAMAccountName”;
$ldap_dn_search_password = “Admin_Password”; - Define admin users from LDAP in the config.inc.php file
$auth["admin"] = “Admin”;
Being open source the opportunities to endless for you to critique this system to your individual needs. We have edited various files within the system to do the following:
- Only allow admins to create repeat bookings
- Change field labels by editing the language file (lang.en)
- Apply the users username to the end of the displayed booking so staff can easily see who has made the booking
- Add an “Override Creator” field for admins only so that they can make a booking on a staff members behalf
- Edit the Help page to be more school specific help



Follow Me!