Drupal 7.x

With Booking Timeslots module you are able to book timeslots to use a facility or book a class held in the facility.

Note: this page is not in sync which the modules /admin/config/booking_timeslots/tutorial but you should check those too as the develop spend quite sometime in those too.

Preparation

These page(s) assume you have 4 content types

  1. Venue
  2. Facility
  3. Class
  4. Instructor

Each class has an instructor.
Each class is held at a facility.
Each facility is located on a venue.

These relations are managed by Entity Reference module.

As this module is complex due to its needed relations and calendar interaction take your time.

Download and install modules

Currently the dependencies are: addressfield, booking_timeslots, calendar, ctools, date, entity, entityreference, features, hierarchical_select, opening_hours, strongarm, tipsy, views, workflow

  1. Download the module.
  2. Do not enable the module but first check its dependencies
  3. Download and enable the dependencies.
  4. At last enable Booking Timeslots

Configure the relations

After enabling the modules Booking Timeslots defines some fields for the relations. You can use these or define your own as long as these are Entity Reference fields.

Configure Booking Timeslots

  1. Visit /admin/config/booking_timeslots/settings on your Drupal instance
  2. See the node type(s) and relation fields

This makes sure the calender view gives no errors.

Calendar

  1. Add a views template: "A calendar view of the 'created' field in the 'node' base table."
  2. Make sure your Calendar view only uses the facility or class content types.
  3. As the module does tricky things it needs some calendar templates. Copy these calendar-* from booking_timeslots/templates to your theme.
  4. Make sure you rebuild the cache for drupal to find your templates.
    • Drupal cache: admin/settings/performance
    • Eventually clear Views cache: admin/build/views/tools
  5. If you use more calendars make sure you rename them to more specific views template files.
  6. Visit your calendar path to check for its functionality.
  7. You should see new calendar changes on /calendar view ('Book now' links).
    I.e. go to: /calendar/2014-01

TODOs:

Change path for calendar
?

Booking Example Site

For more details, you may check the following: Booking Example Site at GitHub which you can download and install on your local host to see how it works (the instructions are included in README.md).

Drupal 6.x

1. Install the module.

2. Make sure that your Calendar view is enabled and you can access at: /calendar

3. Copy tpl files from module theme/ folder to your theme folder.

4. Clear the cache to reload newly copied TPL files:

a. Drupal cache: admin/settings/performance

b. Eventually clear Views cache: admin/build/views/tools

You should see new calendar changes on /calendar view ('Book now' links).

I.e. go to: /calendar/2014-01

Support

For further support regarding the module configuration on Drupal, you may consider asking it at Drupal Answers.