Skip to content

wvulibraries/RoomMe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RoomMe

WVU Libraries' Room Reservations Software

Room Reservations provides a robust, secure, and highly configurable room reservation software platform that can handle the requirements multiple buildings, rooms, and policies with a single installation.

Requirements:

Room Reservations has only been tested on Linux, running Apache, PHP, and MySQL. Room Reservations uses the EngineAPI Framework, version 4.

Testing:

We have provided a vagrant setup to test Room Reservations locally. Install Vagrant, change to the directory where you cloned this repository and type "vagrant up" on your command line.

To view the system as an unauthenticated patron, go to localhost:8090/services/rooms/.

To authenticate, we have provided a script that will authenticate you to the local vagrant box, please visit Vagrant Login. Once authenticated visit the Admin Interface

By default no data is loaded into the database. You will need to create buildings, rooms, templates, and configure the system. A SQL file, roomReservations.sql is provided as a way to test the system with some default data. This is a stripped down copy of the production database at WVU Libraries. To load this file by default uncomment the last line in the bootstrap.sh file. The example dataset includes 3 buildings, 2 that use the RoomMe software and one (Health Sciences Library) that links to an external form.

Setup:

  1. Setup EngineAPI 4.0 on your server
    • Upload the files outside of your document root
    • %%%More Steps Here%%%
  2. Upload RoomMe files to the server
  3. Delete the vagrantLogin.php file
  4. modify the roomReservationHome localvar, in src/includes/vars.php to reflect the path to the software
  5. %%%User Information setup here%%%
  6. %%%Database Connection Setup information here%%%
  7. Configure your software

Configuration:

  1. System
  2. Messages
  3. Via
  4. Statistics
  5. Buildings
  6. Policies
  7. Templates
  8. Rooms
  9. Snippets

Hours Information

RoomMe allows for an Hours RSS URL per building. When defined this will prevent RoomMe from allowing reservations while a building is closed.

Fines Information

Access Control

Access Controls in Room Reservations are controlled via EngineAPI's Access Controls. By default they use Active Directory Security Groups.

  1. Public Interface

    • By default there is no access control in the document root of the software. This can be changed by adding a acl.php file to the root of the room reservation software.
    • To make a reservation the users must be logged into the software, unauthenticated reservations are not permitted.
  2. Admin

    • libraryWeb_roomReservation - Can access the admin interface and there functions:
      • Create/Edit reservations
      • Create/Edit series reservations
      • List all (and delete) reservations
      • Print a reservations page
      • Search for a users reservations.
    • libraryWeb_roomReservation_rooms - Can manage rooms
      • Create/Edit new buildings
      • Create/Edit new room Policies
      • Create/Edit new Room Templates
      • Create/Edit new Equipment & Equipment Types
      • Create/Edit new Rooms
    • libraryWeb_roomReservation_admin
      • Manage system messages
      • Manage via messages
      • Manage system wide default settings
      • View Statistics
      • Create/Edit snippets

All of the above functions can have individual ACLs added to their respective directories to further refine access controls, either using security groups or individual user accounts.

Uploading Room Restrictions

When uploading a CSV file for creating room or building restrictions, the file must have email addresses in the third column and usernames in the 5th column.