The booking system of DPCalendar is highly adaptable to work perfectly for your specific use case. In the global DPCalendar options, the site admin can adjust the settings explained below.
If an event is a series then there are three different modes for the booking form available which is controlled by the "Book Series" option in the Event booking configuration:
If an event has enabled the waiting list flag, then bookings can still be made, but are added to the waiting list when the capacity is full. The admin has to put the booking from the waiting state into either reviewed (paid bookings) or invited/activated (free bookings) once there is some free space available.
With DPCalendar it is possible to have some user actions after a booking is done. If the booking is done as none logged in user, then the site admin has the possibility to automatically create a user or to display the user registration form. The later is called gradual engagement to smoothly bring the user to the point to create an account on your site. The former one creates a user with the E-Mail address of the booking. On the first log in the user needs to set a new password because of security reasons.
DPCalendar has very clear steps to book events. These are:
There are various settings, in the booking system tab of the global DPCalendar options, to define who gets a mail:
The booking ID is a random generated string which contains of numbers, letters and dashes. Different companies have different needs for the UID, some want a date, others the plain ID or a timestamp. To fit all the different needs we moved the generation code to a layout, so you can do a layout override. To do so, copy the file /components/com_dpcalendar/layouts/booking/uid.php to /templates/{{your template}}/html/layouts/com_dpcalendar/booking/uid.php and /administrator/template/isis/html/layouts/com_dpcalendar/booking/uid.php (when you edit it in the back end). Now you can adapt it to your needs, both overrides do need the same code. The booking is accessible through the variable $displayData['booking'].
For example if you want to make it with the date and the id of the booking, you can use the following code:
echo DPCalendarHelper::getDate($displayData['booking']->book_date)->format('Ymd-H:m:s', true) . '-' . $displayData['booking']->id;
It generates as invoice ID then 20200305-14:03:53-12 for a booking which is created on the 5.th of march with the id 12.
The same can be applied for tickets, just use ticket in the path for the files and $displayData['ticket'] to get access to the ticket.
In the DPCalendar permissions, it is possible to give certain user groups admin rights to manage the bookings or tickets. Use the permission with the label "Admin Booking/Tickets". Like that you can separate DPCalendar admins from the booking admins. More information can be found in the ACL chapter.
The settings can be configured globally in the DPCalendar options or per menu item. If the value is empty in the menu item, then it will be inherited from the global options.
Comments (0)