Booking module: Difference between revisions

From MoodleDocs
mNo edit summary
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
'''Booking module for managing course participants (online course or offline course)
Documentation for booking module version 7.8.7.02 (2023012702)


'''An all-in-one solution in terms of booking management'''
The Booking Plugin is a powerful booking tool that offers many features. It is perfect for managing (recurring) course bookings or event bookings in Moodle. In addition, in conjunction with the shopping cart plugin for Moodle, it is possible to book multiple booking options at the same time, but the native Moodle payment system is also supported. Events (also called "Booking options") can either be created individually or linked to your own existing Moodle courses.
==Features==
==Features==
Some of the features are:
*Limited number of participants
* Waiting list
*Automatic course registration
*Automatic group login and creation
*Confirmation email
*Download user list as XLS or ODS
*Cancellation system
*Subscription duration
*Accept terms and conditions
*Custom messages
*Bulk subscription management
*Assign teachers the ability to manage a single booking option
*Registration form as PDF (for printing)
*Custom fields for booking options
* Completion of an activity
*Evaluation (Rating)
*In combination with a Moodle certificate plugin like "Custom Certificate": automated sending of certificates
==How to use the booking module==
===1. Install plugin on Moodle===
====1.1. Prerequisites   ====
The following plugins must be installed to fully use the Booking Plugin.
*mod_booking: https://github.com/Wunderbyte-GmbH/moodle-mod_booking   
*local_wunderbyte_table (mandatory): https://github.com/Wunderbyte-GmbH/moodle-local_wunderbyte_table   
The following third-party plugins must also be installed to take full advantage of the plugin.
*filter_shortcodes: https://moodle.org/plugins/filter_shortcodes  
*customfield_dynamic: https://moodle.org/plugins/customfield_dynamic  
*local_entities (optional): https://github.com/Wunderbyte-GmbH/moodle-local_entities  
*local_shopping_cart: https://github.com/Wunderbyte-GmbH/moodle-local_shopping_cart  
====1.2. Plugin installation  ====
The plugin can be downloaded here: https://moodle.org/plugins/mod_booking  
Detailed instructions on how to install a plugin on Moodle can be found at: [[Installing plugins#Installing%20via%20uploaded%20ZIP%20file|https://docs.moodle.org/402/en/Installing_plugins#Installing_via_uploaded_ZIP_file]]
====1.3. Software updates====
Software updates of plugins can be automated or manual. It is recommended to update them manually to keep an eye on possible complications with other plugins and ensure that the site continues to work smoothly.  
Here you can find all information about automatic updating of Moodle plugins: [./https://docs.moodle.org/402/de/Automatische_Aktualisierungen https://docs.moodle.org/402/de/Automatische_Aktualisierungen]  
A manual update can be performed by an administrator at: https://mymoodlesite<nowiki/>/admin/plugins.php?updatesonly=1&contribonly=0. As soon as a new version of a plugin is available, it will be displayed there.
===2. Configuration  ===
For this point the plugin must be installed to perform the first steps.
====2.1. Create course for bookings====
Create one-time course for events: At the beginning, a course for events must be created once. This has a special position. All events are listed in it and the associated booking options are displayed.
To access the plugin settings directly, you can navigate (with administrator rights) to Pluigns > Activities > Booking in the website administration, or call up the following direct link: <nowiki>https://mymoodlesite/admin/category.php?category=modbookingfolder</nowiki>
====2.2. Global plugin settings====
You can access the global settings of the plugin via Website Administration > Plugins > Booking. The following things can be set and created here:  
=====Booking instance templates  =====
Existing booking instance templates can be deleted here. To create a booking instance template, proceed as follows: Booking settings > Add booking instance to template
To fill in a booking instance with an already existing template you can proceed as follows: see General / Fill in with template.
=====Booking: Configure booking options form  =====
Here you can remove unneeded functionalities to make the form for creating booking options clearer. Attention: Only deactivate fields that you are sure you do not need!
=====Booking: Price categories  =====
The first price category is already created by default. Here you can define a default price and change the name (e.g. to default price). To create a new price category click on "Add price category". Attention: Once you have created a category, you cannot delete it. However, you can rename or deactivate categories.  
The following can now be specified for a new price category:
*Identifier: must be lower case, e.g. employee.
*Name = Name which is displayed in the booking option, e.g. employee.
*Standard price
*Sorting: as soon as a second category has been created, the sorting must be specified. The default price category gets the number 1, all subsequent ones are numbered consecutively.  
*Note: Price categories can be created in this version, but they are still not usable/visible without the additional plugin Shopping Cart. From version 8 they are then directly integrated in the booking module.  
=====Booking: Semester  =====
Here you can create, change and delete semesters, vacations and vacations. After saving, the entries are sorted downwards according to their start date.  
=====Booking: Custom booking option fields  =====
Custom fields and categories can be created and managed here. Click on "Add new category" to start.  
You can now change the newly created category by clicking on the pencil. Confirm your entry with Enter. On the right, you can select and create different fields via "Add a new custom field".  
=====Posting: Global rules (PRO)  =====
Gloable rules can be added in the PRO version to make a rule dependent on a date or event. For example, there is currently no possibility to inform all registered persons with a mail about the cancellation of a booking option. In this case, a global rule can be created and used. Currently, a mail can be sent as an action, in the upcoming plugin version there will be many more possible actions (enrollment, etc.). In addition, the template will be replaced by the gloablen rules.  
=====Booking=====
The PRO license key can be entered under "Activate PRO version". The expiration date of the license is displayed directly below. Further options, which are available with the PRO version, can be managed here:
*Enable progress bar for already passed time = feature to visually display already passed time of booking options.
*Length of the teaching unit (minutes): Here you can specify the length of a teaching unit in minutes. This will be used for the calculation of the performed UEs.
*Price settings: Here you can define individual settings for the prices of bookings.
*Duplicate, backup and restore: Here you can set which information should be included when duplicating or restoring booking instances.
*Notification list: If there are no more available places for a booking option, participants can register to receive a notification as soon as places are available again.
*Configuration of the iCal attachments: Configure the iCal.ics files that are attached to emails. With these files you can add booking appointments to the personal calendar.
*Configuration registration form
*Extra columns on the signature list: You can map up to 3 extra columns on the signature list. Enter the title of the column or leave the field blank to not show an extra column.
*Booking option templates: Here you can select a default template from the available templates.
*Description texts for available booking and waiting list places (PRO)
*Global mail template (PRO): If you want to use the global mail template, enter it here first and set the mail template source to global in the settings of any booking instance.
===3. Set up booking instance===
====3.1. Create instance  ====
A booking instance is created in order to create booking options in it, each of which can be booked separately. In booking options there are different possibilities of setting for the respective course or event.  
To create an instance, you must be in edit mode. Now open the course in which the booking instance is to be created. Here you can now select the booking instance under "Create activity or material". After that, all settings can be made, which will be discussed in more detail in the next chapter.
====3.2. Set settings====
=====General=====
(1) Populate from template: Templates can be created to automatically fill in the settings for the course. These are saved and can also be used in the future to define other settings.
(2) Booking name: Here you can enter the name of the booking instance: e.g. "Course ...". This will be displayed as the title during the booking.
(3) Type of event: The type of event refers to the form of booking options included in the booking instance: For example, it could be workshops, lectures, or online webinars. You can either create a new event by typing the event (e.g. "Webinar) and it will be automatically applied. Or you can choose from the list of events that have been created previously.
(4) Booking text: In the description of the booking you can generate a short text that briefly summarizes the contents of the booking instance: What exactly is it about, what is the subject matter, etc.?
(5) Duration: In the duration you can define a period for the booking options contained in the booking instance: e.g. "one semester". However, it could also be a shorter module or internship with a shorter duration: e.g. 4 weeks.
(6) Name of the organizer: If you are the organizer/ professor/ etc. you can enter your name. If it is your first booking instance, the name will be automatically saved in a list. If you have already created a booking instance, you can find yourself in the dropdown selection. The same applies in case you create the instance for someone else.
(7) Link to the poll: A number of placeholders can be used in the text. The text could look like this:
"Dear {participant}, We would like to invite you to participate in the end-of-semester survey for your course {title} at {teacher}. You can find the survey here: (link to survey)"
(8) Link to the teacher poll: Same placeholders as for 7. You can insert the survey event, duration, points, organizer, survey links here.
(9) Attachment: If you want to set up an attachment for your booking instance, you can upload it. All file types are supported up to a size of 500MB.
(10) Views to show in the booking options overview
(11) Default view of the booking options (my / active / all bookings)
(12) Sorted by: All booking options can be displayed sorted: e.g. by start or availability of courses.
=====Views, presence status=====
(1) Activate presence status
(2) Standard template: If you want to use a template, you can choose from the list of already created templates. There is also the possibility to create your own template, should you want to use it again in the future.
(3) How should descriptions be displayed: You can choose whether further information should be displayed directly or whether it should be expanded by clicking on it.  
(4) Show list of available booking options on course page (only in version 7) : If this is enabled, you will see a list with all available booking options directly on the course page under the booking instance link. If it is not enabled, you will only see the course name, a short description and a button that allows you to view the available booking options.
=====Header images  =====
Header images for booking options can be uploaded here: These images must have exactly the same name as the respective value that the selected custom field of the respective booking option has, otherwise it cannot be assigned.
=====E-mail settings with placeholders  =====
All e-mail settings can be set up here.
(1) The e-mails must first be activated.
(2) A copy can be sent to the booking manager, which can be defined later.
(3) If bookings were made for another person, it can be set to which of the two a confirmation email is sent: The user who made the booking or the user for whom the booking was made.
(4) If the start and end time has been defined, it is possible to set how many days before the start a notification should be sent. In addition, a second reminder can be sent.
(5) With our PRO PlugIn it is also possible to send a reminder to the trainers. This is especially useful when there are several trainers or they have not created the course themselves.
(6) In addition, the source of the e-mail templates can be defined (from the booking instance or from the global templates). It is important that the respective email templates have been created (in the instance or in the plugin settings for global templates).
(7) Lastly, all possible notifications can be formulated: Notifications about status changes, reminders, booking confirmations, links for surveys, etc.
=====Booking conditions=====
(1) Describe booking conditions: Here you can formulate a text that will be displayed before booking to define existing conditions. Are only certain people allowed to book this course? Must another course be completed beforehand, etc.?
(2) Cancellation settings: Here you can define the cancellation settings. If the users are allowed to cancel the course even after the start of the event, you can set the switch to "yes" here. The same applies to whether the users should generally be able to cancel the course themselves and if so, up to how many days in advance they are allowed to do so.
(3) Enrollment settings: In this section you can define general settings for automatic creation of the course: If users are automatically enrolled, they will be automatically enrolled in a specific group. What is the maximum number of people allowed to make a booking for this course. (Cancellation yes/no, autom. user enrollment, etc.).
(4) Other course settings: Here you can mainly define the displays of the course page. How many entries should there be per page, is there an automatic numbering of entries, etc.. Are comments possible and much more.
=====Category=====
Here you can create a new category in your course or select an existing category. To do this, go to "Edit categories" and name your new category and determine whether it should be a parent or child category of existing categories.
=====Status-dependent posting option text=====
Here you can define a booking text that will be displayed depending on the status of the booker: Before booking, after booking or after an activity completion. The placeholders for names, dates, etc. can be displayed on the blue highlighted question mark.  
For example, the text could look like this after posting:  
"Dear*r {participant},  
welcome to the {title} course at {teacher}.  
Your status is currently: {status}.  
To unsubscribe your booked dates you can use the following link: {usercalenderurl}.  
We look forward to getting started soon and working together!"
=====Configuration login form  =====
Here you can integrate any logo in the header and/or the footer of the registration form. E.g. the logo of the university or the institute. You have to pay attention to the maximum file size of 500MB, as well as the file type. The following are compatible: .ai .bmp .gdraw .gif .ico .jpe .jpeg .jpg .pct .pic .pict .png .svg .svgz .tif .tiff  
The registration form can contain, depending on the selection, all the names/ addresses/ etc. of the participants and is used to check the attendance of those.
=====Custom report templates  =====
A report template can be created in advance and then selected in this area.  
In the booking option settings, under More > Manage custom report templates, the individual templates can be edited or deleted.
===4. Create booking options===
====4.1. Creating a booking option  ====
Enter the previously created booking instance. In the secondary navigation click on "New booking option".
The following settings can now be set:
=====General settings=====
(1) Unique Identifier: is generated automatically. It is used to uniquely identify booking options.
(2) Prefix: Course number; can be assigned to courses with the same name/topic for better identification. Can be left blank if not required.
(3) Booking option name: is filled in automatically, but can be renamed as desired (e.g. "Moodle for beginners - The entry-level course").
(4) Visibility: defines whether this option is visible to all, or only to authorized persons.
(5) Description of the booking option, is visible at the booking option for all (if setting was set before for all).
(6) Internal annotation: an internal note or annotation can be entered here. Regardless of the visibility setting above, this will only be displayed in this form.
(7) Add new location: a new location can be entered and confirmed with Enter (then saved for future entries), or selected from the drop-down list of previous locations.
(8) Add new institution: a new location can be entered and confirmed with Enter (then saved for future entries), or selected from the drop-down list of previous locations.
(9) Address: Website or postal address can be entered here; however, URL will not be displayed linked.
(10) Upload image: here you can upload an image with the maximum dimensions 1024 x 1024 px, which will appear in the pop-up view of the booking.
(11) Limit the number of participants: if this box is checked, the number of participants can be limited.
(12) maximum number of participants (no entry = unlimited) and
(13) maximum number of waiting list places (no entry = no places) must be specified.
(14) Minimum number of participants can also be specified.
(15) Choose a course: either select a course from the drop-down list of courses, or select "New course" if you want a new (empty) course to be created automatically. The courses must be on the same platform.  → For "New course", a custom booking option field must be created first, which is used for the course categories for automatically created courses. This field must also be selected in the plugin settings of the booking module.
(16) Duration of the course can be specified here.
(17) Start and end time of course are known: if this box is checked, the following can be the start date as well as end date including time can be specified.
(19) Enroll users only at the beginning of the course = this is disabled by default. If the box is checked here, then the following setting in the booking instance must also be set to "Yes" → "Automatically enroll users".
(20) Also the option "Add to course calendar" is then available. This is the Moodle calendar. Booking uses 2 of the calendars built into Moodle:
*Course calendar: with this option the event will be added to the course calendar. All persons of the course (= enrolled users) can thus see it in the calendar, regardless of whether they have booked the option.
*User calendar: as soon as you have booked an option, this appointment will also appear in this individual user calendar. This always happens by default, regardless of whether the "Add to calendar" option has been activated. → Excursus : To import appointments into a Moodle external private calendar (Outlook, Google, etc.), the placeholders {usercalendarurl} and {coursecalendarurl} can be used in the email. See also chapter Email settings with placeholders.
(21) Link to survey: this field does not need to be filled in. This is a survey/evaluation of the participants about the teacher (placeholder {pollurl}).
(22) Link to the trainer survey: this field does not need to be filled in. This is a survey/evaluation to be filled out by the teacher (placeholder {pollurlteachers}).  
(23) The option Link to survey can be set both on instance level (see General / Link to poll) and on booking option level (Edit booking option). The former is useful if you want to use the same survey link for all booking options and thus only have to enter it once.
(24) Max. Enter the maximum number of bookings that a trainer assigned to the booking option can make, if this is to be regulated.
(25) Attachment can be uploaded here
=====Dates=====
(1) Select time period
(2) Enter day of week, start time and end time = in format day, hour:minute - hour:minute
*if start and end dates have already been specified before, this will already appear.
(3) User-defined appointments = special appointments can be created here, such as for block events or if individual appointments deviate from the appointment series.
(4) Confirm with "Create appointment series → Dates can still be edited afterwards.
=====Price=====
For this purpose, price categories must be created beforehand - see Chapter Global plugin settings / Booking: Price category .  
Note: Price categories can be created in this version, but they are still not usable/visible without the additional plugin Shopping Cart. From version 8 they are then directly integrated in the booking module.
=====Restricting availability  =====
The following options can be de/activated under this menu item:
(1) Enable booking option only from a certain date: when activated, a date selection appears.
(2) Enable booking option only until a certain date: when activated, a date selection appears.
(3) User has previously booked a certain option: here the booking can be linked to a previous booking, e.g.: only if you have chosen the course "Spanish A1" you can choose "Spanish B1".
(4) A selected user profile field should have a specific value.
(5) A selected custom user profile field should have a specific value
=====Advanced options=====
(1) Here there is a possibility to store a notification text on activity completion;
(2) make the "Book Now" button invisible for participants and
(3) To generate a short URL to this booking option.
=====Text depending on booking status=====
If an individual text is entered for a booking option according to status
*before/after booking, or
*after activity completion  
is to be displayed, it can be entered here. An overview of the available placeholders can be found here - see also chapter Status dependent booking option text. These fields can also be left blank if the text defined in the posting instance is to be used.
=====Add as template  =====
Previously created templates , can be selected here from the drop-down list.
====4.2. Create booking as template  ====
Once you have created a booking option, you can also save it as a template. The option to do so can be found in the last menu item of the respective booking option > Add as template > Use as global template.  


*Max participants
Once a template has been created, it can be edited under "Manage option templates".  
*Waitinglist
 
*Automatic course subscription
To use a template, you can proceed as follows: Open booking instance > Select new booking option > In the General settings, select the appropriate template in the drop-down selection at "Populate from template" and make adjustments if necessary.  
*Confirmation mail
 
*Download userlist as xls or ods (you can select which custom fields to export)
Overview of the booking instance settings:
*Cancellation system
=====Manage option templates  =====
*Subscription period
In the booking option settings, under More > Manage option templates, the individual templates can be edited or deleted.
*Automatic add events to Moodle calendar
=====Import CSV with booking options  =====
*Tags, categories
Multiple booking options can be created as a csv list and uploaded collectively. To do this, select the file locally or drag and drop it into the field and finally click "Import".
*Automatic enrol users in groups
====4.3. Filter  ====
*Attachments
These are located in the booking option settings under More > Filters. By default, these filters, such as autolink to activities, show URL as link or image, etc., are enabled, but can be disabled individually.
*Sending custom message to users
====4.4. Keyword templates  ====
*etc.
In the booking option settings, under More > Keyword Templates, the individual templates can be created, edited or deleted. Keywords can be thought of as tags that are added to an event.
====4.5. Change semester  ====
These are located in the booking option settings under More > Change semesters. Here you can create, change and delete semesters, vacations and vacations.
====4.6. Calculate all prices from instance with formula  ====
Prices created in advance under price categories.
====4.7. Teachers report  ====
Here the hours of a teacher can be calculated, provided that the text field of the appointment series and the duration set in the settings have been specified.
====4.8. Download data  ====
All options of the booking instance including bookings by users can be downloaded as table data in the following formats: .cs, .xlsx, .html, .json, .ods, .pdf
===5. Edit booking options  ===
= via "All booking options" you get to the overview. Next to each entry there is a gear wheel on the right. Clicking on it opens a drop-down selection with the following options:
 
(1) Edit booking option: you get back to the booking option settings and can make changes.
 
(2) Manage option dates: here you can subsequently change the date and time of individual appointments; as well as the number of days before the start of the session, where a notification will be sent to the participants (if you enter the number "0" this function is disabled)
 
(3) Book other users: a user with the appropriate rights can make a booking here for any person enrolled in the course as a participant for a booking option. Select the user in the right column and click on the "Add" button. Global groups (cohorts) or those from the course can also be selected for the booking option.
 
(4) Only this booking option: this loads only this booking option and gives you a URL (in the address bar) to this booking option.
 
(5) Delete this booking option.  


==How to use the booking module==
(6) Cancel this booking option.  
#General settings:
##Add an activity > Booking
## Give a general name (not your EVENT name), booking text will be shown at the top of page.
## Default booking limit Numbers can be defined at each event page too.
##Time period is very important.
## Yes to email settings
## Policy page is really useful.
## Save and display
## Edit booking option (See No3. in step2)
#Events settings
## Click on the ‘Manage x responses’ link at the top-right corner
## Click on the bottom/latest ‘Edit this booking option’ under ‘Mange column’
##Give an Event name into ‘Booking’ field.
## You can define ‘limit number’ and ‘Restrict time’ here again.
## Looks like you can book for other course, but, I think we can ignore this.
## Description will be shown on the booking table, very important.
## Click on ‘Save and add new’
#Editing
## You can delete a user’s booking
## You can delete an event with all bookings in it.
## You can click on the button ‘Download users as .xls’ to download bookings in spreadsheet for each Event, or click on the button at the bottom of page to get a full list (Great!)
#Permissions:
## Click on the ‘Permissions’ under the ‘Settings’ block.
## At the dropdown menu: ‘Advanced role override’ choose ‘Manager’ (or teacher, or any role)
## At table: Activity: Booking, tick ‘Allow’ Permission to all five lines (or less)
##Save changes
#Bugs
## Fixed all known bugs except:
##      At the ‘Edit this booking option’ page. Site admin can select one or more user names and then choose ‘Delete’ under ‘With selected’ dropdown menu. The page will be redirected to a delete page to confirm. But, this not works in IE8. Please reminder users to avoid IE for this function.
#How to add a new booking option
## Go to "Manage XX bookings"
## Click on "Edit booking option", do not change anything and click "Save and add new"
#Special user profile fields
##If you want to have certain information about your users (phone numbers), you can define custom user profile fields in the Site admin settings. You have to make them "required", then users have to fill out the form with the information requested before they can proceed to book a course.


(7) Duplicate this booking option.
==CSV import==
==CSV import==
Create booking options and add users.
Create booking options and add users.
Line 69: Line 327:
#limitanswers - limit the number of participants Help with Limit the number of participants (1 for limiting or 0 to disable)
#limitanswers - limit the number of participants Help with Limit the number of participants (1 for limiting or 0 to disable)
#location - location ex. room number
#location - location ex. room number
 
====Example csv file as image====
[[File:booking-import-csv.png]]
====Example csv file as PDF====
You can try to extract line by line and put the content in a plain text editor, then save the text file as csv in order to have a properly formatted csv for the import.
[[File:testimport-csv.pdf|thumb]]
==CSV import - activity completion==
==CSV import - activity completion==
Fields in CSV:
Fields in CSV:
#OptionID - Option ID  
#OptionID - Option ID
#UserID - User ID
#UserID - User ID
#CourseCompleted - 1 - competed, 0 - not completed
#CourseCompleted - 1 - competed, 0 - not completed
Line 82: Line 343:
*Escape character: \ (backslash)
*Escape character: \ (backslash)
*Date parse format - format of startdate and enddate fields.
*Date parse format - format of startdate and enddate fields.
==Credits==
==Credits==
* [http://www.edulabs.org/ Edulabs.org]
*[https://wunderbyte.at Wunderbyte GmbH]
* [http://www.princic.net/ Andraž Prinčič]
*[http://www.edulabs.org/ Edulabs.org (former maintainer)]
 
*[http://www.princic.net/ Andraž Prinčič]
==See also==
==See also==
* [http://plugins.moodlebites.com Try the Booking plugin] on http://plugins.moodlebites.com
*[http://plugins.moodlebites.com Try the Booking plugin] on http://plugins.moodlebites.com

Latest revision as of 11:16, 5 October 2023

Documentation for booking module version 7.8.7.02 (2023012702)

An all-in-one solution in terms of booking management

The Booking Plugin is a powerful booking tool that offers many features. It is perfect for managing (recurring) course bookings or event bookings in Moodle. In addition, in conjunction with the shopping cart plugin for Moodle, it is possible to book multiple booking options at the same time, but the native Moodle payment system is also supported. Events (also called "Booking options") can either be created individually or linked to your own existing Moodle courses.

Features

Some of the features are:

  • Limited number of participants
  • Waiting list
  • Automatic course registration
  • Automatic group login and creation
  • Confirmation email
  • Download user list as XLS or ODS
  • Cancellation system
  • Subscription duration
  • Accept terms and conditions
  • Custom messages
  • Bulk subscription management
  • Assign teachers the ability to manage a single booking option
  • Registration form as PDF (for printing)
  • Custom fields for booking options
  • Completion of an activity
  • Evaluation (Rating)
  • In combination with a Moodle certificate plugin like "Custom Certificate": automated sending of certificates

How to use the booking module

1. Install plugin on Moodle

1.1. Prerequisites  

The following plugins must be installed to fully use the Booking Plugin.


The following third-party plugins must also be installed to take full advantage of the plugin.

1.2. Plugin installation  

The plugin can be downloaded here: https://moodle.org/plugins/mod_booking  

Detailed instructions on how to install a plugin on Moodle can be found at: https://docs.moodle.org/402/en/Installing_plugins#Installing_via_uploaded_ZIP_file

1.3. Software updates

Software updates of plugins can be automated or manual. It is recommended to update them manually to keep an eye on possible complications with other plugins and ensure that the site continues to work smoothly.  

Here you can find all information about automatic updating of Moodle plugins: [./https://docs.moodle.org/402/de/Automatische_Aktualisierungen https://docs.moodle.org/402/de/Automatische_Aktualisierungen]  

A manual update can be performed by an administrator at: https://mymoodlesite/admin/plugins.php?updatesonly=1&contribonly=0. As soon as a new version of a plugin is available, it will be displayed there.

2. Configuration  

For this point the plugin must be installed to perform the first steps.

2.1. Create course for bookings

Create one-time course for events: At the beginning, a course for events must be created once. This has a special position. All events are listed in it and the associated booking options are displayed.

To access the plugin settings directly, you can navigate (with administrator rights) to Pluigns > Activities > Booking in the website administration, or call up the following direct link: https://mymoodlesite/admin/category.php?category=modbookingfolder

2.2. Global plugin settings

You can access the global settings of the plugin via Website Administration > Plugins > Booking. The following things can be set and created here:  

Booking instance templates  

Existing booking instance templates can be deleted here. To create a booking instance template, proceed as follows: Booking settings > Add booking instance to template

To fill in a booking instance with an already existing template you can proceed as follows: see General / Fill in with template.

Booking: Configure booking options form  

Here you can remove unneeded functionalities to make the form for creating booking options clearer. Attention: Only deactivate fields that you are sure you do not need!

Booking: Price categories  

The first price category is already created by default. Here you can define a default price and change the name (e.g. to default price). To create a new price category click on "Add price category". Attention: Once you have created a category, you cannot delete it. However, you can rename or deactivate categories.  

The following can now be specified for a new price category:

  • Identifier: must be lower case, e.g. employee.
  • Name = Name which is displayed in the booking option, e.g. employee.
  • Standard price
  • Sorting: as soon as a second category has been created, the sorting must be specified. The default price category gets the number 1, all subsequent ones are numbered consecutively.  
  • Note: Price categories can be created in this version, but they are still not usable/visible without the additional plugin Shopping Cart. From version 8 they are then directly integrated in the booking module.  
Booking: Semester  

Here you can create, change and delete semesters, vacations and vacations. After saving, the entries are sorted downwards according to their start date.  

Booking: Custom booking option fields  

Custom fields and categories can be created and managed here. Click on "Add new category" to start.  

You can now change the newly created category by clicking on the pencil. Confirm your entry with Enter. On the right, you can select and create different fields via "Add a new custom field".  

Posting: Global rules (PRO)  

Gloable rules can be added in the PRO version to make a rule dependent on a date or event. For example, there is currently no possibility to inform all registered persons with a mail about the cancellation of a booking option. In this case, a global rule can be created and used. Currently, a mail can be sent as an action, in the upcoming plugin version there will be many more possible actions (enrollment, etc.). In addition, the template will be replaced by the gloablen rules.  

Booking

The PRO license key can be entered under "Activate PRO version". The expiration date of the license is displayed directly below. Further options, which are available with the PRO version, can be managed here:

  • Enable progress bar for already passed time = feature to visually display already passed time of booking options.
  • Length of the teaching unit (minutes): Here you can specify the length of a teaching unit in minutes. This will be used for the calculation of the performed UEs.
  • Price settings: Here you can define individual settings for the prices of bookings.
  • Duplicate, backup and restore: Here you can set which information should be included when duplicating or restoring booking instances.
  • Notification list: If there are no more available places for a booking option, participants can register to receive a notification as soon as places are available again.
  • Configuration of the iCal attachments: Configure the iCal.ics files that are attached to emails. With these files you can add booking appointments to the personal calendar.
  • Configuration registration form
  • Extra columns on the signature list: You can map up to 3 extra columns on the signature list. Enter the title of the column or leave the field blank to not show an extra column.
  • Booking option templates: Here you can select a default template from the available templates.
  • Description texts for available booking and waiting list places (PRO)
  • Global mail template (PRO): If you want to use the global mail template, enter it here first and set the mail template source to global in the settings of any booking instance.

3. Set up booking instance

3.1. Create instance  

A booking instance is created in order to create booking options in it, each of which can be booked separately. In booking options there are different possibilities of setting for the respective course or event.  

To create an instance, you must be in edit mode. Now open the course in which the booking instance is to be created. Here you can now select the booking instance under "Create activity or material". After that, all settings can be made, which will be discussed in more detail in the next chapter.

3.2. Set settings

General

(1) Populate from template: Templates can be created to automatically fill in the settings for the course. These are saved and can also be used in the future to define other settings.

(2) Booking name: Here you can enter the name of the booking instance: e.g. "Course ...". This will be displayed as the title during the booking.

(3) Type of event: The type of event refers to the form of booking options included in the booking instance: For example, it could be workshops, lectures, or online webinars. You can either create a new event by typing the event (e.g. "Webinar) and it will be automatically applied. Or you can choose from the list of events that have been created previously.

(4) Booking text: In the description of the booking you can generate a short text that briefly summarizes the contents of the booking instance: What exactly is it about, what is the subject matter, etc.?

(5) Duration: In the duration you can define a period for the booking options contained in the booking instance: e.g. "one semester". However, it could also be a shorter module or internship with a shorter duration: e.g. 4 weeks.

(6) Name of the organizer: If you are the organizer/ professor/ etc. you can enter your name. If it is your first booking instance, the name will be automatically saved in a list. If you have already created a booking instance, you can find yourself in the dropdown selection. The same applies in case you create the instance for someone else.

(7) Link to the poll: A number of placeholders can be used in the text. The text could look like this:

"Dear {participant}, We would like to invite you to participate in the end-of-semester survey for your course {title} at {teacher}. You can find the survey here: (link to survey)"

(8) Link to the teacher poll: Same placeholders as for 7. You can insert the survey event, duration, points, organizer, survey links here.

(9) Attachment: If you want to set up an attachment for your booking instance, you can upload it. All file types are supported up to a size of 500MB.

(10) Views to show in the booking options overview

(11) Default view of the booking options (my / active / all bookings)

(12) Sorted by: All booking options can be displayed sorted: e.g. by start or availability of courses.

Views, presence status

(1) Activate presence status

(2) Standard template: If you want to use a template, you can choose from the list of already created templates. There is also the possibility to create your own template, should you want to use it again in the future.

(3) How should descriptions be displayed: You can choose whether further information should be displayed directly or whether it should be expanded by clicking on it.  

(4) Show list of available booking options on course page (only in version 7) : If this is enabled, you will see a list with all available booking options directly on the course page under the booking instance link. If it is not enabled, you will only see the course name, a short description and a button that allows you to view the available booking options.

Header images  

Header images for booking options can be uploaded here: These images must have exactly the same name as the respective value that the selected custom field of the respective booking option has, otherwise it cannot be assigned.

E-mail settings with placeholders  

All e-mail settings can be set up here.

(1) The e-mails must first be activated.

(2) A copy can be sent to the booking manager, which can be defined later.

(3) If bookings were made for another person, it can be set to which of the two a confirmation email is sent: The user who made the booking or the user for whom the booking was made.

(4) If the start and end time has been defined, it is possible to set how many days before the start a notification should be sent. In addition, a second reminder can be sent.

(5) With our PRO PlugIn it is also possible to send a reminder to the trainers. This is especially useful when there are several trainers or they have not created the course themselves.

(6) In addition, the source of the e-mail templates can be defined (from the booking instance or from the global templates). It is important that the respective email templates have been created (in the instance or in the plugin settings for global templates).

(7) Lastly, all possible notifications can be formulated: Notifications about status changes, reminders, booking confirmations, links for surveys, etc.

Booking conditions

(1) Describe booking conditions: Here you can formulate a text that will be displayed before booking to define existing conditions. Are only certain people allowed to book this course? Must another course be completed beforehand, etc.?

(2) Cancellation settings: Here you can define the cancellation settings. If the users are allowed to cancel the course even after the start of the event, you can set the switch to "yes" here. The same applies to whether the users should generally be able to cancel the course themselves and if so, up to how many days in advance they are allowed to do so.

(3) Enrollment settings: In this section you can define general settings for automatic creation of the course: If users are automatically enrolled, they will be automatically enrolled in a specific group. What is the maximum number of people allowed to make a booking for this course. (Cancellation yes/no, autom. user enrollment, etc.).

(4) Other course settings: Here you can mainly define the displays of the course page. How many entries should there be per page, is there an automatic numbering of entries, etc.. Are comments possible and much more.

Category

Here you can create a new category in your course or select an existing category. To do this, go to "Edit categories" and name your new category and determine whether it should be a parent or child category of existing categories.

Status-dependent posting option text

Here you can define a booking text that will be displayed depending on the status of the booker: Before booking, after booking or after an activity completion. The placeholders for names, dates, etc. can be displayed on the blue highlighted question mark.  

For example, the text could look like this after posting:  

"Dear*r {participant},  

welcome to the {title} course at {teacher}.  

Your status is currently: {status}.  

To unsubscribe your booked dates you can use the following link: {usercalenderurl}.  

We look forward to getting started soon and working together!"

Configuration login form  

Here you can integrate any logo in the header and/or the footer of the registration form. E.g. the logo of the university or the institute. You have to pay attention to the maximum file size of 500MB, as well as the file type. The following are compatible: .ai .bmp .gdraw .gif .ico .jpe .jpeg .jpg .pct .pic .pict .png .svg .svgz .tif .tiff  

The registration form can contain, depending on the selection, all the names/ addresses/ etc. of the participants and is used to check the attendance of those.

Custom report templates  

A report template can be created in advance and then selected in this area.  

In the booking option settings, under More > Manage custom report templates, the individual templates can be edited or deleted.

4. Create booking options

4.1. Creating a booking option  

Enter the previously created booking instance. In the secondary navigation click on "New booking option".

The following settings can now be set:

General settings

(1) Unique Identifier: is generated automatically. It is used to uniquely identify booking options.

(2) Prefix: Course number; can be assigned to courses with the same name/topic for better identification. Can be left blank if not required.

(3) Booking option name: is filled in automatically, but can be renamed as desired (e.g. "Moodle for beginners - The entry-level course").

(4) Visibility: defines whether this option is visible to all, or only to authorized persons.

(5) Description of the booking option, is visible at the booking option for all (if setting was set before for all).

(6) Internal annotation: an internal note or annotation can be entered here. Regardless of the visibility setting above, this will only be displayed in this form.

(7) Add new location: a new location can be entered and confirmed with Enter (then saved for future entries), or selected from the drop-down list of previous locations.

(8) Add new institution: a new location can be entered and confirmed with Enter (then saved for future entries), or selected from the drop-down list of previous locations.

(9) Address: Website or postal address can be entered here; however, URL will not be displayed linked.

(10) Upload image: here you can upload an image with the maximum dimensions 1024 x 1024 px, which will appear in the pop-up view of the booking.

(11) Limit the number of participants: if this box is checked, the number of participants can be limited.

(12) maximum number of participants (no entry = unlimited) and

(13) maximum number of waiting list places (no entry = no places) must be specified.

(14) Minimum number of participants can also be specified.

(15) Choose a course: either select a course from the drop-down list of courses, or select "New course" if you want a new (empty) course to be created automatically. The courses must be on the same platform.  → For "New course", a custom booking option field must be created first, which is used for the course categories for automatically created courses. This field must also be selected in the plugin settings of the booking module.

(16) Duration of the course can be specified here.

(17) Start and end time of course are known: if this box is checked, the following can be the start date as well as end date including time can be specified.

(19) Enroll users only at the beginning of the course = this is disabled by default. If the box is checked here, then the following setting in the booking instance must also be set to "Yes" → "Automatically enroll users".

(20) Also the option "Add to course calendar" is then available. This is the Moodle calendar. Booking uses 2 of the calendars built into Moodle:

  • Course calendar: with this option the event will be added to the course calendar. All persons of the course (= enrolled users) can thus see it in the calendar, regardless of whether they have booked the option.
  • User calendar: as soon as you have booked an option, this appointment will also appear in this individual user calendar. This always happens by default, regardless of whether the "Add to calendar" option has been activated. → Excursus : To import appointments into a Moodle external private calendar (Outlook, Google, etc.), the placeholders {usercalendarurl} and {coursecalendarurl} can be used in the email. See also chapter Email settings with placeholders.

(21) Link to survey: this field does not need to be filled in. This is a survey/evaluation of the participants about the teacher (placeholder {pollurl}).

(22) Link to the trainer survey: this field does not need to be filled in. This is a survey/evaluation to be filled out by the teacher (placeholder {pollurlteachers}).  

(23) The option Link to survey can be set both on instance level (see General / Link to poll) and on booking option level (Edit booking option). The former is useful if you want to use the same survey link for all booking options and thus only have to enter it once.

(24) Max. Enter the maximum number of bookings that a trainer assigned to the booking option can make, if this is to be regulated.

(25) Attachment can be uploaded here

Dates

(1) Select time period

(2) Enter day of week, start time and end time = in format day, hour:minute - hour:minute

  • if start and end dates have already been specified before, this will already appear.

(3) User-defined appointments = special appointments can be created here, such as for block events or if individual appointments deviate from the appointment series.

(4) Confirm with "Create appointment series → Dates can still be edited afterwards.

Price

For this purpose, price categories must be created beforehand - see Chapter Global plugin settings / Booking: Price category .  

Note: Price categories can be created in this version, but they are still not usable/visible without the additional plugin Shopping Cart. From version 8 they are then directly integrated in the booking module.

Restricting availability  

The following options can be de/activated under this menu item:

(1) Enable booking option only from a certain date: when activated, a date selection appears.

(2) Enable booking option only until a certain date: when activated, a date selection appears.

(3) User has previously booked a certain option: here the booking can be linked to a previous booking, e.g.: only if you have chosen the course "Spanish A1" you can choose "Spanish B1".

(4) A selected user profile field should have a specific value.

(5) A selected custom user profile field should have a specific value

Advanced options

(1) Here there is a possibility to store a notification text on activity completion;

(2) make the "Book Now" button invisible for participants and

(3) To generate a short URL to this booking option.

Text depending on booking status

If an individual text is entered for a booking option according to status

  • before/after booking, or
  • after activity completion  

is to be displayed, it can be entered here. An overview of the available placeholders can be found here - see also chapter Status dependent booking option text. These fields can also be left blank if the text defined in the posting instance is to be used.

Add as template  

Previously created templates , can be selected here from the drop-down list.

4.2. Create booking as template  

Once you have created a booking option, you can also save it as a template. The option to do so can be found in the last menu item of the respective booking option > Add as template > Use as global template.  

Once a template has been created, it can be edited under "Manage option templates".  

To use a template, you can proceed as follows: Open booking instance > Select new booking option > In the General settings, select the appropriate template in the drop-down selection at "Populate from template" and make adjustments if necessary.  

Overview of the booking instance settings:

Manage option templates  

In the booking option settings, under More > Manage option templates, the individual templates can be edited or deleted.

Import CSV with booking options  

Multiple booking options can be created as a csv list and uploaded collectively. To do this, select the file locally or drag and drop it into the field and finally click "Import".

4.3. Filter  

These are located in the booking option settings under More > Filters. By default, these filters, such as autolink to activities, show URL as link or image, etc., are enabled, but can be disabled individually.

4.4. Keyword templates  

In the booking option settings, under More > Keyword Templates, the individual templates can be created, edited or deleted. Keywords can be thought of as tags that are added to an event.

4.5. Change semester  

These are located in the booking option settings under More > Change semesters. Here you can create, change and delete semesters, vacations and vacations.

4.6. Calculate all prices from instance with formula  

Prices created in advance under price categories.

4.7. Teachers report  

Here the hours of a teacher can be calculated, provided that the text field of the appointment series and the duration set in the settings have been specified.

4.8. Download data  

All options of the booking instance including bookings by users can be downloaded as table data in the following formats: .cs, .xlsx, .html, .json, .ods, .pdf

5. Edit booking options  

= via "All booking options" you get to the overview. Next to each entry there is a gear wheel on the right. Clicking on it opens a drop-down selection with the following options:

(1) Edit booking option: you get back to the booking option settings and can make changes.

(2) Manage option dates: here you can subsequently change the date and time of individual appointments; as well as the number of days before the start of the session, where a notification will be sent to the participants (if you enter the number "0" this function is disabled)

(3) Book other users: a user with the appropriate rights can make a booking here for any person enrolled in the course as a participant for a booking option. Select the user in the right column and click on the "Add" button. Global groups (cohorts) or those from the course can also be selected for the booking option.

(4) Only this booking option: this loads only this booking option and gives you a URL (in the address bar) to this booking option.

(5) Delete this booking option.

(6) Cancel this booking option.

(7) Duplicate this booking option.

CSV import

Create booking options and add users.

Fields in CSV file are (must be in this order):

  1. name - name of booking option
  2. startdate - start date, 0 for no date
  3. enddate - end date, 0 for no date
  4. institution - institution
  5. institutionaddress - institution address
  6. teacheremail - teacher email - to match in users table
  7. useremail - user email to match with user in Moodle
  8. finished - if user has completed activity
  9. maxanswers - max. number of participants (default 0)
  10. maxoverbooking - max. number of places on waiting list (default 0)
  11. limitanswers - limit the number of participants Help with Limit the number of participants (1 for limiting or 0 to disable)
  12. location - location ex. room number

Example csv file as image

booking-import-csv.png

Example csv file as PDF

You can try to extract line by line and put the content in a plain text editor, then save the text file as csv in order to have a properly formatted csv for the import. File:testimport-csv.pdf

CSV import - activity completion

Fields in CSV:

  1. OptionID - Option ID
  2. UserID - User ID
  3. CourseCompleted - 1 - competed, 0 - not completed


  • Field delimiter: , (coma)
  • Enclosure field: " (quotation mark)
  • Escape character: \ (backslash)
  • Date parse format - format of startdate and enddate fields.

Credits

See also