I asked a similar question previously but it was a bit too vague (and slightly different) to what I actually need. I'm about to start building a site that requires a booking system.

Essentially the site owner is available 24/7 (with the exception of some dates and times that they would set as unavailable). So users need to be able to book a service for ANY time except the times the site owner has set as unavailable.

In addition to that, the visitors of the site will be booking specific services that have pre-set durations. For instance one service may be 2 hours, another might be 3 hours, etc. When someone books a service the time-slot should no longer be available for another individual to book. For instance if customer X books a service that is set to take up 3 hours on November 16th 2014 to start at 8:00 AM PST, then customer Y can not book any services between 8:00 AM - 11:00 AM PST on that day.

Payments should also be processed when they make a booking, i'd think i could use something like CHARGE for that.

My question then is not only how would i go about building a system like this sans-plugin? I know it's a pretty complex question but i'd really appreciate a little help in the right direction as I'm having a bit of a hard time wrapping my head around how to accomplish this. Thanks a bunch in advance.

  • How did you get on with this? Use a custom plugin or work with the entries etc - might be looking at something similar in the near future. – mmc501 Jun 29 '17 at 10:22

This would be really tricky without a plugin but you could (and this is a stretch) manipulate the entry channel to accept "reservations" where as the reservations date and time use the date and time field types.

You could then output all the reservation entries to show if/when times are still available. There's no getting around this though, you'd need to work extensively with the saveEntry form, jQuery and a date/time picker to get everything to line up correctly.

The best way to do would be to create a reservation plugin that does specifically this instead of wrangling entires to do the same thing. Either-way I'd say you're looking at some in-depth development time.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.