Prenotare

Team Members

Abstract

In Boise State University's Music Department, efficient access to practice rooms is crucial for student success. The current reservation system, managed through a traditional Google Forms sign-up sheet, faces limitations with real-time updates and user protection, prompting the need for an improved solution.

To address these challenges, the Prenotare web application seeks to improve music practice room reservations. The transition from a manual spreadsheet system to an automatically managed digital platform aims to streamline processes, offering a user-friendly interface responsive to the dynamic needs of the music community.

Key features include a seamless reservation interface, real-time availability updates, a dedicated faculty management dashboard, and automated notifications. This innovative approach holds the potential to transform the reservation process, providing a responsive, maintainable, and equitable experience. Faculty can dedicate more time to mentorship, while students benefit from a modernized platform, fostering a harmonious and productive environment for musical exploration in Boise State University's Music Department.

What We Built and How It Works

Prenotare uses a React front-end and a PHP backend with a MySQL database to manage reservations for practice rooms in the Morrison Center. Using Laravel, a PHP framework, we were able to use an ORM to interact with the database. The user initially is loaded onto the schedule page where they can view the schedule for the next seven days. On the schedule page, each time slot displays the number of rooms available to be reserved at that given time. The schedule updates at midnight, displaying the next day so students can sign up for additional reservations. Clicking on a time slot opens a modal that displays information regarding each room available to be reserved. Clicking on a room allows a user to make a reservation. This makes an API call that stores the reservation in the database. The "Current" time slot is highlighted in yellow and shows which rooms are actively in use for students who want to drop by without a reservation. This modal also displays each room's availability for the next two hours to help students plan their practice time.

Students are able to check in to their reservation via a dropdown bar at the top of the page. When a user's reservation time arrives, this dropdown bar will appear allowing them to check in or out of their room. Prenotare also uses Google's OAuth 2.0 to authenticate users by allowing them to sign up using their Boise State email. This allows us to verify that the user is a student at Boise State and that they are authorized to use the system.

The account page allows users to view all of their reservations in one place, listing the date, time, and which room the user has a reservation for. The account page also allows users to cancel their reservations. Deleting a reservation removes it from the database and updates the schedule page so other students can reserve that room. On the account page, users can also toggle a colorblind mode that changes the colors of the schedule page to be more colorblind-friendly.

Moderators have their own account page, allowing them to view their reservations, as well as all reservations made by students. Moderators can view current and past bookings up to a certain date, determined by a global variable. They are able to search for bookings by user, room number, date, or time. Moderators also have the ability to delete any reservation made by a student as a way to moderate the system. Moderators must be appointed by an administrator which ensures that only trusted users are able to modify user reservations.

Administrators have the same capabilities as moderators, but they are also able to modify the privilege of users. They are also able to modify global variables, specifically the number of reservations a student can have in a seven day period, and the number of days worth of reservations that should be stored in the database.

Prenotare also has a notification system that sends an email to students when they create or cancel a reservation. This email comes from an official Boise State email address, PracticeRooms@boisestate.edu, and contains details regarding the reservation, including the date and time of the reservation, as well as the room number the student has reserved. If an administrator or moderator cancels another student's reservation, the student will receive an email notifying them of the cancellation. It will also include the reason the reservation was cancelled, if the moderator or administrator provided one. Using this notification system, we are also able to automatically check students out of their rooms if they do not check out on their own after their reservation ends.

Screenshots

Reservation is over email

Reservation Is Over Email

Reservation confirmed email

Reservation Confirmed Email

Time slot modal

Time Slot Modal

Time slot modal

Account Page