Meeting room
1 booking per hourWeekdays 9:00 to 17:00 with no 12:00, two weeks ahead, from one hourly Smart Date recurrence rule. Bookings need two days' notice to cancel, and a full hour has a waitlist.
This site runs the contrib module Bookable Calendar (3.2.x-dev) with three demo calendars and the 3.2 reservation workflows set up to try. It is also where we work on the module: three patches, and two tabs of our own on every calendar. A script rebuilds the demo with dates from today, so the times are always this week and next.
Each calendar shows a different booking rule of the module. Each one opens three ways: the module's own page, a FullCalendar week, and a row of start times.
Weekdays 9:00 to 17:00 with no 12:00, two weeks ahead, from one hourly Smart Date recurrence rule. Bookings need two days' notice to cancel, and a full hour has a waitlist.
Tuesday and Thursday at 18:00 and Saturday at 9:30, four weeks ahead. Each person takes a mat, so a party of two takes two. Owned by the demo instructor, who manages its reservations.
30-minute appointments on Monday, Wednesday and Friday from 10:00 to 12:00. One click books a time, a person can hold one open booking at a time, and rescheduling is switched off.
The module ships one page per calendar. We added two tabs beside it, and a schedule across all three calendars.
The module's own page: upcoming times by day, places left and a Book button, with a pager and date and time-zone pickers. Its rows line up because of the #3629832 patch.
Our module bookable_fullcalendar: the openings on a FullCalendar week, month or list. Each time says Available, places left, Full or Past, and links to its booking form or the waitlist.
Our module bookable_times: a week at a time, a row of start times under each day, Next available when a week is empty, and the booking form in a dialog.
Every open time of all three calendars on a Calendar View month or week grid. Full times are left out.
The 3.2 branch adds reservation workflows on top of booking, and the demo script sets up each one. Its two accounts have no password: log in with drush @ddev.bookable uli --name=demo-instructor, or --name=demo-customer.
Three patches on 3.2.x-dev at 4302696 and two modules of our own, kept on this site rather than pushed upstream.
Oct 5
Demo site installed
Bookable Calendar 3.2.x-dev on Smart Date and Smart Date Recur, with the script that rebuilds the demo.
#3629511
Hand-made and moved times stay put
A local patch. Saving an opening deleted the instances it had not generated; now a time made or moved by hand is written into its opening. The merge request was trimmed to the first half; we keep the whole fix.
#3629527
My calendars
Merge request !57: a link in the account menu to the calendars an owner can manage.
#3629832
One row per time on the calendar page
Merge request !58: Time and Slots Available line up, and the time zone is named once, in the column label.
Oct 9
Calendar and Times tabs
bookable_fullcalendar and bookable_times, two views of a calendar's openings as tabs beside View.
Oct 28
This page
Built in Drupal Canvas from the Singularity theme's components, through the same tools an MCP agent uses.
Everything here is sample data. To start again with fresh dates, run drush @ddev.bookable php:script scripts/bookable-demo.php.