Before we begin, just note that this can become a little complex (depending on what you want to do). If you don't have time to get your head around how this works, please reach out to Skedda with a clear description of your requirements and we'll be happy to help you implement conditions to meet them.
Booking conditions let you limit the way that non-admin users can make bookings for your spaces.
You can add booking conditions that depend on a number of factors. Conditions can vary by user group, booking duration, day of the week, and time of day.
- "We want to enforce a maximum booking time of two hours on Saturdays after 5pm"
- "We always require that bookings are strictly one hour in duration"
- "We require that bookings are in strict two-hour blocks, starting only at 10am, 12am, 2pm, 4pm, or 6pm"
- "We want to prevent the group Members from booking on Sundays before 2pm"
To be flexible enough to support all of the cases above, conditions are created to implement deny behavior. That is, Skedda will allow bookings by default, unless it matches one of the conditions you create.
Our examples can then be solved with the following logic:
- "We want to enforce a maximum booking time of two hours on Saturdays after 5pm" translates to: Between 5pm and midnight on Saturdays, deny the booking if its duration is greater than two hours
- "We always require that bookings are strictly one hour in duration" translates to: Between midnight and midnight on every day, deny the booking if its duration is not equal to one hour
- "We require that bookings are in strict two-hour blocks, starting only at 10am, 12am, 2pm, 4pm, or 6pm" translates to: Between 10am and 8pm on every day, deny the booking if the interval from 10am to its start time is not a multiple of two hours, AND the interval from its end time to 8pm is not a multiple of two hours
- "We want to prevent the group Members from booking on Sundays before 2pm" translates to: Between 12am and 2pm on Sundays and for the group Members, deny the booking if its duration is less than or equal to 24 hours (matches all bookings)
Note that any conditions you add here are in addition to your current 'Hours of availability' and 'Booking window' restrictions. That is, a booking from a non-admin user will only be allowed if it lies within your hours of availability, satisfies your booking window restrictions and doesn't violate any booking conditions you setup.
Finally, remember that these conditions only apply to non-admin users. As an admin, you're always able to make a booking for any space whenever it's free (irrespective of hours of availability, booking window restrictions and the space booking conditions here).
Creating a Booking condition
- Click on the edit option under the Booking conditions section of the Spaces page.
2) The next step is to decide whether you want to setup a condition for all non-admin users (called General conditions) or just those users that are part of a specific group.
To create conditions for a group, select the option in the right hand corner which will create a new conditions pane for specifying conditions exclusive to that group.
3) From here you can click the 'Add booking condition' button. This will give you the option to create a condition from scratch by choosing 'A basic condition that I can tune', or to create a condition from a template that illustrates some common scenarios (minimum booking time, maximum booking time etc.).
4) Once selected, this will create one or a number of concrete condition rows for you to edit and adjust to your liking.
You then have full control to change all of the elements associated with the condition to get it working just as you need it.
When working with conditions, remember that they're describing "deny" rules as we did with our examples above. It can help to think logically and read the entire condition sentence out loud to yourself. Bookings that don't match any condition will be allowed. If one or more conditions match, the booking will be denied and the user shown an appropriate error message.
Depending on your requirements, you might struggle to create conditions to achieve what you want. In such cases we're happy to help you out. Just reach out to us using the in-app communicator and let us know, in as much detail as possible, the behavior you're trying to achieve (e.g. "for Room 102, we need to set things up so that users can only book from 11am-1pm, 2pm-4pm or 5pm-7pm, but no other times").
Using Booking conditions across multiple spaces
It is often the case that a number of different spaces will share the same conditions so we've made it easy to 'apply' the conditions from one space to any number of other spaces.
To do this you'll need to go to the other similar spaces and choose the Take from option.
This will then show you a list of your other spaces that it can 'take' the conditions from. This can be a real time saver and mean you don't need to set the same conditions over and over. It also lets you make changes that will then be applied across all the linked spaces.
Implementing "quota"-style conditions
Please note that it is not currently possible to implement "quota"-style conditions, like "don't allow users to book more than X hours per day/week/month". This feature is currently on our roadmap. In the meantime, you could police such quota requirements by setting up appropriate notifications and warning your users during the bookings process that any violation of assigned quotas will result in their bookings being cancelled.