Bookings

"Bookings" or "Events" are the main entries displayed on the calendar.

1170

The Booking Form

Creating a Booking

Creating a booking is as simple as clicking 'Book a Room' from the navigation bar and filling out the form. Depending on the Application Settings, events can be created immediately (approved) or with a 'pending' status. A 'pending' event is displayed slightly differently and needs to be approved by a user with the correct Permission. You can lock down who can create and approve events via the Permissions system.

Required Fields

A booking has certain required fields: Title,Start Date,End Date,Location.
Everything else is optional.

Optional Fields

"Layout" refers to the requested room layout. It may be that your location only has one default layout: layouts are configurable per location (see Edit an existing Location), as well as having a 'default' list of standard options available as an Application Setting.

Contact details can be added by the requester which will send them a confirmation of the booking.

1190

Optional resource booking

Resources can be booked alongside an event, see Adding a New Resource.

Bulk Create Events

You can specify some (very) simple repeat rules when creating a new event: note that this essentially duplicates the event 'x' times at 'x' time - it does not create a master / child event or uses any instancing: when you create those repeating events, they are independent entries in the system, and there is no way of bulk updating them later. They are their own entities.

All Day Events

All day events are displayed differently in some calendar views. Events can be both multiday, i.e, span across midnight, perhaps over several days, and yet still not be 'allday' events - All Day events will often appear with (all day) next to them instead of a specific time range (although for calculation purposes, they get give a 7am - midnight time range in the backend). Clicking 'this is an all day event' in the form will reset the start and end time for that booking.

Custom fields + Templating

For more advanced use, in addition to the standard supplied fields, events can have custom fields added to them. (See Custom Fields). The main booking form can also have Custom Templates for input and output.

Concurrency Checks

When an booking form is being filled, there are also certain checks in place to try and prevent overbooking. Whenever the location, start or end date are changed, three checks happen:

  • A concurrency Check: a simple check to see if your requested time range falls within any other event's ranges in that location - if it does, a warning notice is displayed.
  • A Layout Check: when changing location, the layout dropdown will update with any custom layouts for that location
  • A Resource Check: when changing date or location, any bookable resources need to have their availability rechecked - this only applies to resources which have been marked as such. If a resource can no longer be booked due to either a location restriction, or a concurrency restriction, it will be greyed out.

Contact Notifications

When a booking is created, the email address entered into the contact field can be sent an initial creation notification by checking the Email contact box.

Notifications also get sent when an event is approved or rejected: this happens irrespective whether that checkbox is ticked; as a rule, if you don't want emails sent about it, don't enter an email address in that field. You could of course, enter it in the description if you want.

Booking Statuses

Bookings can exist in one of three states:

  • Approved: Fully approved by a user with the correct permission (usually an admin or editor). Approved events have a full colour background with white text.
  • Pending: Awaiting approval; Pending events are displayed in the calendar, but with inverted colours (white background) and have an exclamation mark next to them to indicate their status.
  • Denied: An event which has been actively denied (but not deleted) by an administrator: Denied events appear more faded, and with an 'x' next to them

If your application is not configured to use the approval queue, then all events will be approved on creation.