Original ticket: Resource Checkout System and rental pool (to reserve rooms, books, cars, etc).
Two main goals:
- Manage inventory of resources
- Permit to loan / rent these resources
A resource can be
- Physical piece of equipment
- Projector
- Camera
- Other resource that can only be used by one person/group at the same time
- Conference room
Who is working on this?
- Alexandre Quessy
- Marc Laporte
- Xavi
- You?
LabàLab user story
The requirement is to help 15-20 different artist-run centers manage their inventory of audio-visual equipment. They have equipment such as cameras, video projectors, lighting spots, tripods, backgrounds, microphones, etc.
Roles
- Center: artist-run centers
- End user: artist wishing to borrow or rent a piece of equipment
- Manager: person at each center who manages equipment & inventory
Manager
- Know at any given time where each piece of equipment is
- Generate stats from the system
End user
- Visits site to check list of inventory
- User is interested, and thus, checks if the resource is available
- If so, user makes a reservation
- If center is fully using the system, it's a real reservation
- If center is not using system fully, this is just a request (only an email will be sent, and rest is managed offline)
- Users comes to the center and borrows equipment. Manager confirms the reservation in the system
- An email is sent to the user to confirm reservation (with conditions and when it is to be returned.
- When user returns the equipment, manager inspects the equipment and confirms the return
- An email is sent to the user to confirm the return
Related FLOSS project to look at
MRBS: More Room Booking System
This PHP-&-Mysql-based software does, since many years ago, what we want to add to Tiki
http://mrbs.sf.net
Related features in Tiki12
- Resources list and details: in a Tracker (or maybe several)
- Calendar Display: using PluginTrackerCalendar (which uses FullCalendarResourceViews, which is a fork ofhttp://arshaw.com/fullcalendar/FullCalendar] Jquery plugin)
- Email sending to users booking (tracker field user with option creater and notify user of changes, also from his own), and to managers of the resource so that they are aware of bookings requested for that resource and period.
- Booking Status
- New field in the tracker to indicate if the booking has been accepted or not. That might be implemented with the "pending" status created for new items, and changed to "open" when booking accepted, and changed to closed when rejected.
- some text-area field would be needed to indicate the reasons fro the booking rejection (if so), etc.
Probably missing features (or new code needed)
- Sending reminder to user some days in advanced the booked period for that resource will expire.
- This could be probably reused?: http://doc.tiki.org/Batch#Change_status_of_Tracker_items_REAL_AMP_email_notification_in_advance
Missing features
Critical for the project
- Unit of time for the bookings. They could be:
- hours
- morning, afternoon, evening (3 periods in a day)
- morning, afternoon (2 periods in a day, in working places where they all quit at 5 p.m.)
- full days (single checkbox for the whole day)
- others?
- New option somewhere (new field in trackers for start and end dates of a booking period?) to indicate that the day (or time period) is booked for that resource, and no other booking are allowed for the same resource and overlapping time period.
Nice to have
- Calendar display: Annual view (or semester, quadrimester, etc - multi-month, like the multiweek approach, maybe: )
- Visual Filtering of items from the resource catalog:
- when too many items are displayed in the calendar resource view, we need some way to allow the user to apply filters there, like when you select which calendars to display in tiki with "fullcalendar" widget enabled, or similar.
- Drag & drop available resources to the calendar to start a reservation for that day or period
- similar to what is shown here: "Dragging external events into the calendar" (but for resources):
http://arshaw.com/js/fullcalendar-1.6.4/demos/external-dragging.html
- similar to what is shown here: "Dragging external events into the calendar" (but for resources):
- Allow fetching evetns from a google calendar? allow users to get events from teh Tiki calendar and send to a Google Calendar of their own.
- Unit of time for Booking periods:
- with or without weekends (an option to remove weekends from the booking calendar would be welcome)