=== Booking Calendar ===
Contributors: wpdevelop, oplugins
Donate link: https://wpbookingcalendar.com/buy/
Tags: booking calendar, bookings, booking, appointments, events
Requires at least: 5.3
Requires PHP: 5.6
Tested up to: 6.9
Stable tag: 10.14.12
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Original "Booking Calendar" plugin. Easily manage full-day bookings, time-slot appointments, or events in our all-in-one, outstanding booking system.

== Description ==

= The #1 must have Booking Plugin for WordPress =

**WP Booking Calendar** is the original **WordPress booking plugin**, powering thousands of websites since 2009. Add a beautiful, responsive booking calendar to your site to accept **online reservations**, manage **appointments**, and schedule **events** — all from an intuitive admin panel. It's a complete solution for rental bookings, service appointments, event scheduling, and more.

Plugin provides an **easy-to-use** booking system for displaying **calendar availability**, receive bookings from your website visitors, and manage bookings through a **modern and clean booking admin panel**.

Moreover, with the ability to **sync bookings** with other services Booking Calendar offers you be up-to-date to avoid duplicate bookings.

[Features](https://wpbookingcalendar.com/features/ "Features Overview of Booking Calendar") | [See Demos](https://wpbookingcalendar.com/demo/ "Live demos of premium versions") | [FAQ](https://wpbookingcalendar.com/FAQ/ "Booking Calendar - FAQ") | [Video Guides](https://wpbookingcalendar.com/help/ "Youtube Video Tutorials") | [Get Support](https://wpbookingcalendar.com/support/ "Get support for Booking Calendar plugin" )

= New Setup Wizard! =
> <strong>Easy Time Appointments Configuration for your Bookings</strong><br />
> Set up **appointment booking system** in less than 2.5 minutes. Designed with a user-friendly flow, the wizard takes you step-by-step through key settings, including booking type selection, calendar appearance, availability preferences, and more. This step-by-step setup helps you get your booking system ready for your business quickly and easily.

https://www.youtube.com/watch?v=GYJWZJBFwXw

> <strong>Full Day Bookings - Setup Wizard</strong><br />
> Easily configure Booking Calendar for full-day bookings with the new step-by-step Setup Wizard. Get your booking system ready for full day bookings in just a few minutes.

https://www.youtube.com/watch?v=NJ88lGD5iJ0

> <strong>Changeover Multi-Day Bookings - Setup Wizard (Pro)</strong><br />
> Configure multi-day bookings with specific check-in and check-out days, clearly marked with diagonal or vertical lines. Perfect for bookings that require split days. <br>**Available Pro versions**.

https://www.youtube.com/watch?v=uCQ9JmHR8w4

= Perfect solution for any booking logic =

As the first booking system for WordPress, we have created a huge number of features to match your specific booking needs.

Easily **define available dates** and allow your visitors to **reserve** your property or service for a **full day** or **time-slot**.

For those who need more advanced functionality, our premium versions offer an extensive system with **multiple resources**, **seasonal prices**, **conditional dates** selection, **availability search**, and even a **multi-user system** where users can independently manage their own availability, much like an Airbnb portal.

= Booking Calendar is great for =

Whether you’re renting a property or you’re a sole business owner looking to automate your service bookings, Booking Calendar can help you.
- Resource scheduling (bed & breakfast, houses, apartments, etc.)
- Client scheduling (photographers, lawyers, beauty salons, spas, etc.)
- Meeting scheduling (coaching, phone advice)
- Patient scheduling (doctor, dentists, clinic, medical)
- Equipment rentals (yachts, boats, cars, bikes, technics, etc.)
- Event scheduling (conference, course, fitness center, yoga class, gym)
- Or any other service where booking for a specific time is required

### Simple steps to get started

= 1. Add booking form or availability calendar to your page =
Easily insert the booking form on any page of your website using WordPress blocks or Booking Calendar widgets for sidebars or configure shortcode block in page builders like Elementor. Read more [here](https://wpbookingcalendar.com/faq/insert-booking-calendar-into-page/ "How to insert the booking form or availability calendar into the page?").

= 2. Set initial unavailable days with just few clicks =
You can **define days availability** in just a 3 mouse clicks at Booking > Availability page. Simply select a range of days on the calendar, choose 'available' or 'unavailable' status, and apply. It’s that simple!

= 3. Configure booking form, email templates and other settings =
Easily **customize** your **booking form** fields and add **[time slots](https://youtu.be/-pOTMiyp6Q8?t=28s "Video guide how to configure time slots in Booking Calendar Free version")** if needed. Configure **email** notifications and other settings such as the **calendar** appearance, booking admin panel functionality, and more...

= 4. Receive notifications and manage bookings =
Get notified about a **new appointments** and manage them in a modern admin panel. **Approve**, **decline**, or **edit** specific bookings. Plus, you can get a complete picture of your schedule with the **calendar overview** in **day**, **week**, or **month** view mode.

= 5. Configure syncing of bookings with other services =
**Import** your **Google Calendar** events or make **2 ways sync** of your events by using **.ics feeds** with various services such as Airbnb, Booking.com, VRBO, HomeAway, TripAdvisor, FlipKey, and more... Thanks to native integration with [Booking Manager](https://wordpress.org/plugins/booking-manager/) plugin.

### How it works?

- **Step 1:** Visitor select desired date(s) in calendar
- **Step 2:** Visitor selects a time-slot (optional)
- **Step 3:** Visitor fills in Booking Form and submits it
- **Step 4:** You receive a notification and manage the booking

### Awesome features:

= New =
Super **easy set available/unavailable dates** in calendar with just three mouse clicks.

In Booking Calendar you can define days as available or unavailable in just a few clicks. Simply select a range of days on the calendar, choose 'available' or 'unavailable' status, and apply. It's that simple!

= General =
- **Modern** and **easy to use** interface.
- The plugin is designed to be a suitable for a vast array of businesses.
- 100% mobile-friendly and looks amazing on any device.
- All booking data is stored in your DB. You don't need other accounts.
- **Multi language** support. Check all available languages at [this page](https://wordpress.org/plugins/booking/#support%20languages%20%28local%29 "Translations").

= Easy to start using =
Booking Calendar is an easy solution to start receiving bookings.
You can quickly [add the booking calendar](https://wpbookingcalendar.com/faq/insert-booking-calendar-into-page/) to your posts or pages using WordPress blocks or shortcodes. Additionally, you can add the booking calendar as a widget to your site's sidebar.
Most of the settings come with predefined values and descriptions.

= Bookings =
- **Prevention of double bookings** - one booking per day or time slot.
- Alternatively, you can allow **unlimited bookings for the same date** and time within the same calendar.
- You can enable **pending bookings as available** in the calendar, which lets you receive multiple bookings for the same date until you manually approve one of them. You can receive as many bookings as you need to and stop receiving bookings on specific dates once you have approved a booking.

= Timeslots bookings =
**[Time slot bookings](https://youtu.be/-pOTMiyp6Q8?t=28s "Video guide how to configure time slots in Booking Calendar Free version")** are available in the Booking Calendar Free version, which allows you to receive bookings for available time-slots during a selected day. Customers can select time slots either in a time picker or from a dropdown list, depending on your settings at Settings General page in "Time Slots" section.

= Calendar =
- Select a **calendar skin** that matches your website design.
- Or customize the calendar colors by [editing the CSS](https://wpbookingcalendar.com/faq/change-skin-and-colors/) styles.
- Choose to display [one or several months](https://wpbookingcalendar.com/faq/shortcode-booking-form/#booking-options) in the calendar view.
- Easily set the width of the calendar and the number of months in a row, such as [3x2 months](https://wpbookingcalendar.com/faq/shortcode-booking-form/#booking-options).
- Choose between **single** day or **multiple days** selection mode.
- Set the number of unavailable days in the calendar, starting from today.
- Specify particular weekdays as unavailable.
- Show a legend on the calendar to help visitors understand the status of each day.

= Booking Form =
Easily customize your booking form fields to capture all the necessary information for each booking. Choose which fields are required and which are optional, and customize field labels as needed. Plus, the booking form includes **CAPTCHA** support to prevent spam submissions.

= Timeline =
[Timeline view](https://wpbookingcalendar.com/faq/shortcode-timeline/) allows you to display all your bookings in a yearly, monthly, or daily view on the front-end of your website, giving your visitors a quick and comprehensive overview of your schedule.

= Booking Admin Panel =
- Easily manage your bookings with a modern and clear [Booking Listing](https://ps.w.org/booking/assets/screenshot-03.gif?rev=2870020) panel or with the intuitive [Calendar Overview](https://ps.w.org/booking/assets/screenshot-04.png?rev=2870020) mode.
- The [Booking Listing](https://ps.w.org/booking/assets/screenshot-03.gif?rev=2870020) makes it very simple to find the required reservations. It provides searching by different criteria and immediate results based on keywords.
- Get a complete picture of your schedule with the [Calendar Overview](https://ps.w.org/booking/assets/screenshot-04.png?rev=2870020) in **day**, **week**, or **month** view mode.
- **Approve**, **decline**, or **edit details** in required bookings.
- **Print** a list of your bookings.
- Get the number of new bookings on the **booking dashboard section**.

= Google Calendar Integration =
- [Import events](https://wpbookingcalendar.com/faq/import-gc-events/) from your **Google Calendar** to the Booking Calendar plugin.
- With just one click, **add bookings to Google Calendar** from the Booking Listing page using export button near each booking(s).

= Sync bookings =
- Easily **import and export** events using .ics feeds or files with native integration with our [Booking Manager](https://wordpress.org/plugins/booking-manager/) plugin.
- **[Import events](https://wpbookingcalendar.com/faq/#sync)** from various sources, such as Airbnb, Booking.com, HomeAway, TripAdvisor, VRBO, FlipKey, and any other calendar that uses the .ics format.
- Customize parameters such as date conditions and maximum number of items to import in the import [shortcodes](https://oplugins.com/plugins/wp-booking-manager/booking-manager-help/#events-import).
- **[Export bookings](https://wpbookingcalendar.com/faq/#sync)** by configuring custom URL for your.ics feed. This feed can then be imported into services that use the .ics (iCal) format, such as Google Calendar or Airbnb, etc...

= Email Notifications =
Configure email confirmation to be sent to the site administrator and visitors for specific booking actions, such as new booking creation, approval or decline of bookings. You can customize the content and format of the emails, and also change the administrator email address to receive notifications.

= Other settings =
- Customizable **date format** for your bookings.
- **Restriction of access** to plugin menus for standard WordPress user roles.

And **much more**... Check ton of features in [premium versions](https://wpbookingcalendar.com/features/ "Booking Calendar Features list") of plugin.

### Premium Features in paid versions

= Booking Calendar Personal (or higher versions) =
- [Multiple booking resources (calendars)](https://wpbookingcalendar.com/features/#booking-resources) - create an unlimited number of booking resources (calendars), which can be your services, properties, or any other items that can be booked by visitors in separate unique calendars.
- [Advanced configuration of booking form and emails](https://wpbookingcalendar.com/features/#booking-form) - fully customize the appearance of your booking form and email templates.
- [Manage bookings](https://wpbookingcalendar.com/features/#manage-bookings) - perform various actions such as CSV export, adding notes, editing, duplicating, changing resources, and much more...

= Booking Calendar Business Small (or higher versions) =
- [Online Payments](https://wpbookingcalendar.com/features/#payments) - accept online payments for your bookings, with support for various payment gateways like **Stripe, PayPal, Authorize.Net, Redsys**, and more.
- [Changeover Days](https://wpbookingcalendar.com/features/#change-over-days) - enable **split bookings** marked by vertical or diagonal lines, allowing visitors to check out and check in on the same date.
- [Range days selection](https://wpbookingcalendar.com/features/#range-days-selection) - easily enable week(s) or any specific number of days selection with 1 or 2 mouse clicks, and configure minimum and maximum number of days, as well as specific start weekdays for selections.
- [Auto Approval / Cancellation](https://wpbookingcalendar.com/features/#auto-cancellation) - set up automatic cancellation of unpaid pending bookings after a specific time, or enable auto-approval for incoming bookings.
- [Advanced Hourly Bookings](https://wpbookingcalendar.com/features/#times) - increase the flexibility of your Booking Calendar by allowing visitors to book specific start and end times or duration of time, ensuring precise scheduling for your services.

=  Booking Calendar Business Medium (or higher versions) =
- [Seasonal Prices](https://wpbookingcalendar.com/features/#rates) - customize the daily cost (rates) for different seasons or week days with fixed costs per day or as a percentage from original daily cost.
- [Multi-Day Pricing](https://wpbookingcalendar.com/features/#valuation-days) - set different cost of booking based on the number of selected days, and the ability to apply these costs only if the "Check In" day falls within a specific season.
- [Last Minute Booking Discount](https://wpbookingcalendar.com/features/#early-late-discounts) - offer a discount for bookings, if the difference between the booking date and the check-in date is less than a specified number of days.
- [Early Booking Discounts](https://wpbookingcalendar.com/features/#early-late-discounts) - set a discount for bookings made in advance, if the difference between the booking date and the check-in date is greater than a specified number of days.
- [Advanced cost](https://wpbookingcalendar.com/features/#additional-cost) - configure the booking cost based on the options selected in the form, by adding extra charges such as taxes, additional services, or by adjusting the cost based on the number of visitors.
- [Deposit payments](https://wpbookingcalendar.com/features/#deposit) - allows visitors to pay a part of the booking cost such as a fixed deposit value or percentage of the original booking cost after creating a booking.
- [Multiple Custom Forms](https://wpbookingcalendar.com/features/#custom-forms) - create multiple form configurations, allowing you to use different forms with different form fields for each of your booking resources.
- [Advanced days selection](https://wpbookingcalendar.com/features/#advanced-days-selection) - customize the specific number of days that can be selected on specific weekdays or during certain seasons or allow specific start week days on certain season.
- [Different time-slots on different days](https://wpbookingcalendar.com/features/#times-week-days) - configure different time slots for different week days or seasons.
- [Advanced Season Availability](https://wpbookingcalendar.com/features/#availability) - set unavailable days for specific seasons, such as holidays or weekends during summer, using conditional season filters.
- [Availability from Today](https://wpbookingcalendar.com/features/#availability-from-today) - limit or define the number of available/unavailable days starting from today.
- [Unavailable time before or after a booking](https://wpbookingcalendar.com/features/#unavailable-time-after-before-booking) - setting the number of minutes, hours, or days needed for cleaning or other services, applicable to bookings with time slots or change-over days feature.

=  Booking Calendar Business Large (or higher versions) =
- [Capacity and Availability](https://wpbookingcalendar.com/features/#capacity) - set the  the maximum number of bookings that can be made per full day or time slots  in calendar, and ensure that dates in the calendar are only available until the capacity is reached.
- [Search Availability](https://wpbookingcalendar.com/features/#search) - allows your website visitors to quickly search for available booking resources such as properties or services by entering check-in/out dates and other criteria like the number of guests or specific amenities.
- [Coupons for Discounts](https://wpbookingcalendar.com/features/#coupons) - offer discounts to your visitors by creating coupon codes that can be entered in the booking form.
- [Auto-Cancel Pending Bookings](https://wpbookingcalendar.com/features/#pending-available) - enable automatic cancellation of pending bookings for specific dates when you approve booking for the same resource.

=  Booking Calendar MultiUser version =
- [MultiUser Booking Admin Panels](https://wpbookingcalendar.com/features/#multiuser) - enable each registered WordPress user to have their own individual booking admin panel, where they can see and manage only their own bookings, resources, and settings. This includes the ability to configure their own booking form, receive notifications to own separate emails, and activate payment gateways for their own payment accounts.

== Installation ==

Installing the plugin is easy. Just follow one of the following methods:

= Install Booking Calendar from within Wordpress =

1. Visit the plugins page within your dashboard and select ‘Add New’
2. Search for "Booking Calendar by oplugins"
3. Activate Booking Calendar from your Plugins page
4. You're done!


= Install Booking Calendar Manually =

1. From the dashboard of your site, navigate to Plugins --> Add New.
2. Select the Upload option and hit "Choose File."
3. When the popup appears select the booking.zip or booking-x.x.zip file from your desktop. (The 'x.x' will change depending on the current version number).
4. Follow the on-screen instructions and wait as the upload completes.
5. When it's finished, activate the plugin via the prompt. A message will show confirming activation was successful.

That's it! Just configure your settings and [insert booking form shortcode](https://wpbookingcalendar.com/faq/insert-booking-calendar-into-page/ ) into a page, and you're on your way to receive the bookings. Need help getting things started? Check out our [FAQ](https://wpbookingcalendar.com/faq/) and [video guides](https://wpbookingcalendar.com/help/) for help with settings and features.

== Frequently Asked Questions ==

Please see [FAQ](https://wpbookingcalendar.com/faq/).

= All you need to know about booking process =

**Step 1: Select your desired date(s)**
Customers can select the date(s) they would like to book. The **Booking Calendar** plugin provides an easy-to-use calendar system that displays the availability of your property or service for those dates.

**Step 2: Select a time-slot (optional)**
If you offer appointments or reservations at specific times, you can configure the booking form to allow customers to select an available time-slot. To learn how to set it up, please [watch this video](https://youtu.be/-pOTMiyp6Q8?t=28s "Video guide how to configure time slots in Booking Calendar Free version").

**Step 3: Fill in Booking Form Fields**
The form will ask for information such as your name, contact information, and other details needed to approve the booking. The booking form fields are customizable, allowing you to configure fields required for the booking.

**Step 4: Submit your booking and Receive Notification of New Booking**
After filling out the booking form, customers can submit the booking. The **Booking Calendar** plugin will notify the administrator about the new booking and send a confirmation email to customers that their booking has been received.

**Step 5: Manage Bookings**
Administrators can manage all reservations from the modern and easy-to-use admin booking panel. Easily find the required bookings, check the booking details, and modify the booking if needed, then approve or decline this reservation. Customers will receive an email confirmation about the approval or cancellation of their booking.

= Privacy Notices =

* Please note, Booking Calendar plugin saving all booking details at your WordPress database at your server. Its does not transfer your booking details to our servers and does not store such info about booking details at our server(s). Please check more detail about this [here](https://wpbookingcalendar.com/faq/where-is-saving-booking-data-gdpr/)
* Additionally please note, you can add the "required checkbox" to your booking form at the Booking > Settings > Form page, to accept your terms and conditions.

= Support Languages (local) =

- English
- French (France)              99.44% [ 2835 / 2851 ], fuzzy 11, not translated 5
- Danish                       89.44% [ 2550 / 2851 ], fuzzy 168, not translated 133
- Dutch                        79.76% [ 2274 / 2851 ], fuzzy 445, not translated 132
- Norwegian (Bokmål)           73.97% [ 2109 / 2851 ], fuzzy 219, not translated 523
- German                       73.87% [ 2106 / 2851 ], fuzzy 555, not translated 190
- Korean                       68.22% [ 1945 / 2851 ], fuzzy 636, not translated 270
- Hungarian                    68.22% [ 1945 / 2851 ], fuzzy 641, not translated 265
- Spanish (Spain)              62.78% [ 1790 / 2851 ], fuzzy 658, not translated 403
- Portuguese (Brazil)          59.24% [ 1689 / 2851 ], fuzzy 767, not translated 395
- Greek                        58.89% [ 1679 / 2851 ], fuzzy 775, not translated 397
- Turkish                      58.12% [ 1657 / 2851 ], fuzzy 791, not translated 403
- Italian                      56.61% [ 1614 / 2851 ], fuzzy 703, not translated 534
- Spanish (Mexico)             54.40% [ 1551 / 2851 ], fuzzy 845, not translated 455
- Finnish                      54.09% [ 1542 / 2851 ], fuzzy 854, not translated 455
- Polish                       54.05% [ 1541 / 2851 ], fuzzy 843, not translated 467
- Romanian                     53.60% [ 1528 / 2851 ], fuzzy 855, not translated 468
- Swedish                      53.28% [ 1519 / 2851 ], fuzzy 864, not translated 468
- Arabic                       52.79% [ 1505 / 2851 ], fuzzy 880, not translated 466
- Russian                      52.72% [ 1503 / 2851 ], fuzzy 1101, not translated 247
- Bulgarian                    51.14% [ 1458 / 2851 ], fuzzy 896, not translated 497
- Slovenian                    51.00% [ 1454 / 2851 ], fuzzy 902, not translated 495
- Chinese (Taiwan)             49.63% [ 1415 / 2851 ], fuzzy 941, not translated 495
- Portuguese (Portugal)        49.25% [ 1404 / 2851 ], fuzzy 927, not translated 520
- Japanese                     48.51% [ 1383 / 2851 ], fuzzy 436, not translated 1032
- Chinese (China)              47.60% [ 1357 / 2851 ], fuzzy 928, not translated 566
- Ukrainian                    47.28% [ 1348 / 2851 ], fuzzy 938, not translated 565
- Catalan                      46.51% [ 1326 / 2851 ], fuzzy 865, not translated 660
- Thai                         46.40% [ 1323 / 2851 ], fuzzy 976, not translated 552
- Hebrew                       46.12% [ 1315 / 2851 ], fuzzy 965, not translated 571
- Galician                     44.93% [ 1281 / 2851 ], fuzzy 1017, not translated 553
- Slovak                       41.77% [ 1191 / 2851 ], fuzzy 938, not translated 722
- Croatian                     40.44% [ 1153 / 2851 ], fuzzy 957, not translated 741
- Czech                        40.30% [ 1149 / 2851 ], fuzzy 909, not translated 793
- Chinese (Hong Kong)          23.85% [ 680 / 2851 ], fuzzy 263, not translated 1908


Please recheck the status of each translation, before using plugin.
We open for your help in new translations or correcting existing ones. You can translate to new language or update exist one, using this [tutorial of translation](https://wpbookingcalendar.com/faq/make-translation-of-wp-plugin/)
= Tech support =

If you have some questions, which you haven't found at [FAQ](https://wpbookingcalendar.com/faq/) you can post them at [technical help board](https://wpbookingcalendar.com/support/)
= Video Tutorials =

Please see [Video Guides](https://wpbookingcalendar.com/help/).


== Screenshots ==
1. **Time-Slot Appointment Bookings**.
2. **Time-Slot Appointment Bookings**: This screenshot displays the front-end booking form, configured in a 2-column layout with light theme. It allows users to select **single day** in the calendar and **time slots** in the booking form.
3. **Full-Day Bookings**.
4. **Full-Day Bookings**: In this screenshot, you can see the front-end booking form, configured in a centered layout with a dark theme. It enables users to select and **book multiple days in the calendar**.
5. **Booking Listing**: You can easily manage all your bookings in one place by searching bookings by keyword, dates, status, and other parameters.
6. **Booking Listing** panel provides a smooth user experience by working instantly without page refresh.
7. **Timeline View**: Get a clear overview of all your bookings.
8. **Add New Bookings.** Quickly create new bookings directly from your admin panel.
9. **Calendar Availability**: Super easily set available or unavailable dates in the calendar with just 3 mouse clicks.
10. **Settings**. Configure the plugin to your specific requirements by adjusting different parameters.
11. **Publish Booking Form into a page**. Alternatively you can easily publish a booking form or availability calendar from the WP Booking Calendar > Publish menu page into existing or new pages.
12. **Customize Calendar Look**: Choose  a style of your booking calendar to match your website's theme design.

== Changelog ==
= 10.14.12 =
- Changes in **all** versions:
	* **Fix**: Set minimum user role to as 'editor' to access the Boking Calendar menus, after initial activation of plugin. You can change this user role on the bspgs > Admin Panel > Plugin Menu / Permissions page. (10.14.12.1.)

= 10.14.11 =
- Changes in **all** versions:
	* **Fix**: Intentionally completely disable showing booking deatils in Timeline view on Front-End side. (10.14.11.1.)

= 10.14.10 =
- Changes in **all** versions:
	* **Improvement**: Improved calendar loading in Elementor Preview (iframe mode) to ensure calendars initialize correctly and AJAX refresh works without errors — preventing false “duplicate calendar” messages like: "You have added the same calendar more than once on this page."
	* **Improvement**: Show warning if Booking Calendar shortcode is placed inside an Elementor Text Editor widget. Since Elementor 3.33.5,  you need to use Elementor Shortcode widget or the native Booking Calendar Elementor widget.
	* **Improvement**: Code refactoring for front-end side form loading.
	* **Improvement**: Refactoring implementation of text captcha, for ability to use addons of replacing this captcha. Find more info in /includes/_capacity/captcha_simple_text.php
	* **Fix**: Added stricter conditions for showing booking details in the Timeline view (front end): details are now displayed only to logged-in users who meet the minimum user level set in Settings > Manage Bookings > Timeline (front end). (10.14.10.1.)
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
	* **Fix**: Resolved issue of not updated the [capacity_hint] with  avvailable slots in "booking form without calendar" shortcode, after loading of the page. *(Business Large, MultiUser)*
	* **Improvement**:  Prevent the warning "Start Time is invalid. The date or time may be booked, or already in the past! Please choose another date or time." from appearing when the change-over feature is active, today's date is selected as the check-in date, and the fixed check-in time is already in the past. (10.14.10.2.) *(Business Small/Medium/Large, MultiUser)*

= 10.14.9 =
- Changes in **all** versions:
	* **Improvement**: Updated French trasanltion by Jean-Gabriel NOZE.
	* **Fix**: Explicitly disable the variable that controls the display of "Booking details in popover", in the free  version to prevent any potential hacks. (10.14.9.2.)
	* **Fix**: Fixed vulnerability. Added strict sanitastion of dates for the calendar. (10.14.9.1.)
	* **Fix**: Some other small fixes of styles and mistakes in timeline shortcode.

= 10.14.8 =
- Changes in **all** versions:
	* **Fix**: Resolved vulnerability issue of correctly  escaping months parameter in he availability calendar shortcode.

= 10.14.7 =
- Changes in **all** versions:
	* **Improvement**: Enhanced showing icons in left vertical  menu  in Compact  mode.
	* **Fix**: Resolved vulnerability issue of correctly  escaping aggregate parameter in shortcodes.
	* **Fix**: Resolved issue of bookings for 2 dates,  hile using start time and duration  of time, and based on duration  of time the end time in this second selected date. Example: check  in time: 22:00, duration: 5 hours.

= 10.14.6 =
- Changes in **all** versions:
	* **Fix**: **Cloudflare Rocket Loader**: Prevents the stuck "Calendar Loading..." message by excluding key calendar scripts from Rocket Loader deferral (10.14.6.1).

= 10.14.5 =
- Changes in **all** versions:
	* **Fix**: Rare issue where some caching/minify/deferral/HTML-optimizer plugins corrupted the inline “Loading…” calendar snippet, causing calendars to fail to appear or show stray text. The loader now runs via a small external script and is compatible with performance plugins; if something’s missing, a clear on-screen message is shown.

= 10.14.4 =
- Changes in **all** versions:
	* **New**: Compact menu mode with more informative labels and wider size.
	* **Improvement**: Resolved calendar loading issues with popular caching/optimization plugins - WP Rocket 3.19.2.1, WP-Optimize 4.2.4, WP Super Cache 3.0.1, Jetpack Boost 4.3.1, WP Fastest Cache 1.3.9. (10.14.4.2)
 	* **Fix**: Backdrop z-index in modal windows so the top toolbar is properly hidden.
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
	* **Improvement**: **Cleaner multiline shortcodes** — You can now put each parameter on its own line in any form shortcode (selectbox, checkbox, radio, etc.). Named attributes like multiple="" or class="..." can also be split across lines. Nothing to change in your existing forms: all single-line shortcodes continue to work exactly as before.

= 10.14.3 =
- Changes in **all** versions:
 	* **Fix**: Prevent opening blank windows on WordPress playground for pseudo links like this: <a href="javascript:void(0)"></a> and to stay in the same tab.

= 10.14.2 =
- Changes in **all** versions:
 	* **Fix**: CSS vulnerability related sanitizing colors. XSS in Emails CVE-2025-9346. (10.14.2.2.)
 	* **Fix**: Resolved issue of not updating from "Full page width" to fixed width size in some themes. (10.14.2.1.)
 	* **Fix**: css issue of calendar in full page widget, when showing calendar with 3 or more months. (10.14.2.3.)
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
	* **NEW** Updated Advanced Form editor. Shortcode engine accept modern, quoted attributes like class="...", placeholder="...", maxlength="..." (and more), while keeping every legacy behavior (e.g., class:foo, placeholder:Enter_name, 40/255 size syntax) fully backward-compatible and safe.  (11.0.2)
	* **NEW** Quoted attributes anywhere in the shortcode:  [text firstname class="someCSSclass otherclass" placeholder="First name" maxlength="64" "John"]  (11.0.2)
	* **NEW** Selects / radios / checkboxes accept quoted classes and other safe attributes: [selectbox country class:"wide" size="6" include_blank "Unated States@@US" "France@@FR"]
	* **NEW** Booleans preserved: multiple still works (legacy token) and also via multiple="" or multiple="multiple".
	* **NEW** Defaults remain last quoted values: by removing quoted attribute values from the “values” bucket, we guarantee back-compat with your “defaults come last” rule.
	* **NEW** Legacy behavior untouched: id:foo, class:bar, placeholder:Enter_name, and 40/255 still work and take sensible precedence.
	* **NEW** Safety: we allow a conservative set of attributes, block style, and escape all values with esc_attr. aria-* and data-* are permitted.
 	* **Improvement**: Added support for quoted placeholders in booking form shortcodes. You can now specify placeholders with spaces directly in quotes inside the form shortcode. For example: [text name placeholder:"Enter first name" "John"] This makes it easier to use multi-word placeholders without underscores. The old syntax (placeholder:Enter_first_name) still works for backward compatibility.

= 10.14.1 =
- Changes in **all** versions:
	* **Improvement**:  Enhanced the warning message displayed during calendar loading if some JavaScript wasn't loaded correctly. (10.14.1.1).
	* **Improvement**:  Refactoring functinality  of using 'Full  Screen' mode with parameter 'is_default_full_screen' => true  in ->tabs(...) method. (10.14.1.2).
	* **Improvement**:  Prepare functionslity  for showing content in right sidebar in future updates.  (10.14.1.3).
 	* **Improvement**:  Add limitation of scrolling back to the past dates (if editing booking with  dates in the past,  or if enabled option "Allow booking in the past" on the Add Booking page) to the number of months defined in the "Number of months to scroll" option on the WP Booking Calendar > Settings > Calendar > Calendar Settings page. It's prevent of showing scroll dates until 1900 year. (10.14.1.4)
 	* **Fix**: Add the exception of not blocking the 'End Time' field options, if selected several dates started from  "today" date and option "Use selected times for each booking date" is disabled. Previosly  such  edn time options was blocked because system wrongly detected them  as times in the past. (10.14.1.5.)

= 10.14 =
- Changes in **all** versions:
	* **New**:  Ability to **set the start and end dates for the calendar** using shortcode parameters. Example: [booking resource_id=1 calendar_dates_start='2025-01-01' calendar_dates_end='2025-12-31' startmonth='2025-3']  (10.13.1.4.)
	* **New**:  New: If startmonth is omitted, the calendar will now automatically use the month from calendar_dates_start as the initial display month.  Example: [booking resource_id=1 calendar_dates_start='2025-01-01' calendar_dates_end='2025-12-31'] (10.13.1.4)
	* **New**:  New: New: You can now **allow users to submit bookings for past dates**, as long as those dates are within the visible range set by calendar_dates_start and calendar_dates_end in the shortcode. Useful for administrative or backdated bookings. Shortcode Example: [booking resource_id=1 calendar_dates_start='2025-01-01' calendar_dates_end='2025-12-31']
	* **New**:  New: Elementor native supports of these parameters   calendar_dates_start='2025-01-01' calendar_dates_end='2025-12-31' in Advanced section.
	* **Improvement**: When calendar_dates_start and calendar_dates_end are defined in the shortcode, the system skips checking availability from today, and instead starts from the defined calendar_dates_start. (10.13.1.4)
	* **Improvement**: To **enable the new Smart Phone Validation** feature introduced in the previous update, go to: WP Booking Calendar > Settings > Booking Form > Form Options and enable the "Smart Phone Validation" option. It is disabled by default. (10.13.1.5)
	* **Fix**:  Improved form phone validation by checking up to 20 times every 0.5 seconds if the phone field and iMask are available before initializing the validation. (10.13.1.1)
	* **Fix**:  Enhanced phone mask detection to better match the most specific country code, improving accuracy. (10.13.1.2)
	* **Fix**:  Enhanced phone mask detection to better match the most specific country code, improving accuracy. Previously, numbers starting with longer prefixes like +1340 or +1284 could incorrectly match the generic +1 (USA). Now the system selects the longest matching prefix for correct formatting. If no match is found, a default mask is used. (10.13.1.2)
	* **Fix**:  Added support for the cell_height parameter in the Booking Calendar shortcode. Example: [booking nummonths=1 options='{calendar months_num_in_row=1 width=100% cell_height=40px}'] Previously, calendar cells used a 1:1 aspect ratio (height equal to width). If you want to keep that behavior, simply remove the cell_height parameter. (10.13.1.3)

= 10.13 =
- Changes in **all** versions:
	* **New**: **Full Elementor support**! Add and configure Booking Calendar directly in the Elementor editor with real-time preview and skin selection. (10.12.4.0)
	* **New**: **Calendar Preloader** with loading bar to prevent layout shift on slow connections. (10.12.4.3)
	* **New**: **Unified sidebar menu—collapsible** structure with all menus shown on a single page for quicker access. (10.12.4.5)
	* **New**: Auto **phone number validation**. Detects phone fields by name ("phone", "fone", "tel", "mobile", "telefono", "telefone", "telefon".)etc., and intelligently applies phone number masks based on the country code the user begins to enter. Example: Entering +1 results in +1 000 000 0000 (USA), +34 results in +34 000 000 0000 (Spain). Only digits are accepted—any unsupported characters are automatically blocked. Additionally, a placeholder with the correct format is shown based on the user’s browser locale (no API required). (10.12.4.4)
	* **New**: **Auto-detects country** via user browser locale (no API needed) and shows a helpful phone format placeholder.
	* **Improvement**: Displays a warning if trying to load a duplicate calendar or a non-existent resource. (10.12.4.6)
	* **Improvement**: Removed horizontal lines in the left sidebar for a cleaner UI. (10.12.4.7)
	* **Fix**: Improved calendar element CSS rendering for better consistency across themes. (10.12.4.2)
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
	* **New**: Added “Service Selection Wizard” booking form template, with vertical service selection and a modern step-by-step layout. (10.12.4.8)
	* **New**: Added “Wizard (No Times)” booking form template with a background panel design. (10.12.4.8)
 	* **Improvement**: Booking ID is now included in Redsys payment transaction details for better tracking. (10.12.4.1)

= 10.12.3 =
- Changes in **all** versions:
	* **Improvement**: Added feedback  form  during plugin  deactivation. (10.12.3.4.)
	* **Fix**: Correct showing "front-end" side page with  booking form  in What's  New section  for Playground. (10.12.3.1.)
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
 	* **Fix**: When accessing the .ics calendar feed for a parent booking resource (with specific capacity) in Booking Calendar Business Large, only bookings from the parent resource are now exported. Previously, bookings from all associated child resources were incorrectly included. (Version 10.12.3.2)
 	* **Fix**: Warning: Undefined property: stdClass::$id in ..\wp-admin\includes\update.php on line 473  (10.12.3.3)

= 10.12.2 =
- Changes in **all** versions:
	* **Improvement**: Added links to Booking admin panel and booking form in "What's New" section.
	* **Improvement**: Added simplebar for scrolable elements. (10.12.2.3.)
	* **Fix**: Added prevention of errors in WP CLI plugin testing (10.12.2.1.)
	* **Fix**: Added left sidebar menu to scroll along with the page on mobile devices to improve accessibility. (10.12.2.2.)
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
 	* **Fix**: Fix not showing booking resources on the Resources page and not ability to  create a new booking resources. Previosly  to  resolve this issue it require to  go  to **WP Booking Calendar > Settings > Admin Panel > Booking Admin Panel** and set the value for the "Resources number per page" option, then clicked "Save changes." (10.12.2.4.)
 	* **Fix**: Critical fault on the website after paying with iDeal, PayPal (legacy), Authorise.net! Error appears in update 10.12.0 and 10.12.1 during redirect to the Wordpress page will end in this fault. (10.12.2.5.)

= 10.12.1 =
- Changes in **all** versions:
	* **Improvement**: **Improved Sidebar Navigation**: The left sidebar is now sticky and scrollable for easier access. (10.12.1.2).
	* **Improvement**: **Better Tooltips**: Tooltips now show when hovering over collapsed menu items in compact mode. (10.11.5.8.2.)
	* **Improvement**: **Color Scheme Support**: The plugin buttons now matches the WordPress admin color scheme you’ve selected in your profile. (10.12.1.3.)
	* **Improvement**: **Fullscreen Mode Memory**: Booking Calendar remembers whether you used fullscreen or normal mode and reopens in the same way next time.
	* **Improvement**: **WP Playground Support**: Now compatible with the WordPress Playground environment. (10.12.1.3.)
	* **Improvement**: **Top Bar Logo**: A Booking Calendar logo has been added to the top WordPress admin bar. (10.12.1.6.)
	* **Improvement**: **Expand / colapse Left Sidebar buttons**: Added additional expand/colapse left sidebar buttons at bottom of the screen. (10.12.1.7.)
	* **Improvement**: During auto-creation of pages with booking form try to set "Full width" theme template, if available.
	**Fix**: Top news messages are now displaying correctly. (10.12.1.1).
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
 	* **Fix**: Correct showing PayPal button titles on bWP Booking Calendar > Settings > Payment Setup > PayPal page.
 	* **Fix**: Fatal error during activation of paid version of Booking Calendar, if by some reason, the Booking Calendar Free version  was not activated,  yet. Uncaught Error: Class "WPBC_Action_Scheduler_Compatibility" not found in ../wp-content/plugins/booking-calendar-com/includes/activation/activation-pro.php:337

= 10.12.0 =
- Changes in **all** versions:
	* **New**: Added a new green calendar skin.
 	* **Fix**: Resolved an issue where time slots were not being blocked on the front-end for booking resources with specific capacity, if some child booking resources were set as unavailable in the Availability menu. (10.11.5.1)
 	* **Fix**: Do not apply options "Limit available days from today" and "Unavailable time from current time" in the admin panel. These options apply only on the front-end side. It gives more flexibility for admin users.
	* **Improvement**: Showing tooltips, when mouse over menu icons in left sidebar, when it set to compact mode. (10.11.5.8)
	* **Improvement**: Open  Availability > Days Availability page by  default in compact mode. (10.11.5.8)
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
	* **New**: Updated the plugin structure for paid versions. All paid versions now require the Booking Calendar Free version and must be installed into a standard folder named `booking-calendar-com`. This structure enables automatic updates of the Booking Calendar Free version, ensuring you receive all critical functionality and security fixes in base Booking Calendar version. Updates for paid versions can still be managed via the plugin website. Pro users will continue receiving automatic updates for the Free version while being able to request paid add-ons, depending on their purchased license type and active subscription.
	* **Improvement**: Improved Stripe payment system integration to avoid creating duplicate customer entries. Now, payments from returning users will be associated with the same customer in the Stripe dashboard. (10.11.5.3)
	* **Improvement**: Added links to test card numbers for making test payments in Stripe, PayPal, and Redsys. Available at WP Booking Calendar > Settings > Payment Setup > Payment Gateways.
 	* **Fix**: Made the "Payment description at gateway website" option required for the Stripe payment system. (10.11.5.2)
	* **Fix**: Corrected the issue where dates and costs were displayed incorrectly on the "Payment" page when the "Set check-out date as available" option was enabled. (10.11.5.4) *(Business Small/Medium/Large, MultiUser)*
	* **Fix**: Set original cost hint calculation (days cost) do not based on discount coupon codes  (10.11.5.7) *(Business Large, MultiUser)*
	* **Fix**: Resolved PHP Fatal error: Uncaught Error: Object of class stdClass could not be converted to string in ../lib_p.php:192 while was used incorrect shortcode on the Settings > Admin Panel > Timeline View (Back-End) page (10.11.5.9)

= 10.11.4 =
- Changes in **all** versions:
	* **New**: Added button in Booking Listing  header to Expand / Collapse all booking rows. (10.11.4.6)
	* **Improvement**: Auto open "check out" calendar, if selected date in check in calendar in "Dates Filter" option in Booking Listing page.(10.11.4.2)
	* **Improvement**: Improvement of consistent menu  items in Bulk Actions menu and in the booking "Action menu". Pending / Trash / Restore / Delete options has the same color and same opening popup dialog. (10.11.4.1)
	* **Improvement**: Refactoring code of access menu pages. 10.11.3.5.1.
	* **Improvement**: Update default calendar  skins for initial  setup. (10.11.4.2.)
	* **Improvement**: Update default form  type for initial  setup. (10.11.4.3.)
	* **Fix**: Fatal error: Can't inherit abstract function WPBC_Menu_Structure::in_page() (previously declared abstract in WPBC_Page_Structure) in ../wp-content/plugins/booking/includes/ui_settings/class-page-structure.php on line 0 (10.11.4.4.)
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
	* **Improvement**: Update number of usage discount coupons, only if it's not editing of the bookings. (10.11.3.6)

= 10.11.3 =
- Changes in **all** versions:
	* **New**: Added options "Allow booking in the past" at the WP Booking Calendar > Add Booking page for ability to  submit the bookings in the past.
	* **Improvement**: Remove link from expanded booking details in Booking Listing page for ability to "copy" the booking details. Previosly it was as a link to colapse the view of expanded booking details. (10.11.3.2)
	* **Improvement**: Remove underline of dates in calendar in different themes conflicts. (10.11.3.1)
	* **Improvement**: Fix showing change-over days colors in new calendar skins: 25_5_***
	* **Improvement**: Updated Booking Calendar icon for "blocks" and Tiny  toolbar at  posts and pages. (10.11.3.3)
	* **Translation**: Local Danish translation updated by Finn Sommer.
	* **Fix**: Overflow width size on the WP Booking Calendar > Settings > Booking Form page (10.11.3.4)
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
	* **Fix**: Resolved showing Availability > Season Availability page. It showed blank page in updatess 10.11 - 10.11.2. (10.11.3.5)

= 10.11.2 =
- Changes in **all** versions:
	* **New**: Added 4 new calendar skins.
	* **Fix**: Resolved vulnerability of SCSS related to the parameters of [wpbc ...] shortcode. (10.11.2)

= 10.11.1 =
- Changes in **all** versions:
	* **New**: Added 5 new calendar skins.
	* **Fix**: Fixed position of the actions button on mobile devices.

= 10.11 =
- Changes in **all** versions:
	* **New**: **New Logo**: Booking Calendar now features a refreshed logo using the initials “b” and “c” for a cleaner, more modern visual identity.
	* **New**: Major update to the **booking admin interface** for a cleaner and more modern experience focused on essential elements.
	* **New**: Added **Full-Screen Mode** on all admin pages. Click the full-screen icon in the top right to focus only on the booking panel.
	* **New**: Introduced a **Universal Left Sidebar Menu** to access all settings. Supports wide, compact, or minimized view. Improved for mobile usability.
	* **New**: **Top Horizontal Bar** stays visible during scrolling, with quick access to save settings, full-screen mode, etc.
	* **New**: Fully redesigned **Booking Listing Page** with a cleaner UI focused on booking dates, status, and labels.
	* **New**: Booking dates now appear on the left in the format best suited to the booking type (e.g. multi-day vs. single time-slot).
	* **New**: Option to expand booking dates or full details with hover/click on arrow icon.
	* **New**: All booking actions are grouped in a dropdown at the right side of each booking.
	* **New**: Many actions now open pop-up windows for additional info (e.g. action reason input).
	* **New**: Bulk actions menu relocated to top-left; auto-expands with additonal actions when bookings are selected.
	* **New**: Improved pagination showing total bookings, current page range, “Back/Next” buttons, and dropdown page navigation at the footer.
	* **New**: UI elements redesigned for clarity and accessibility; visual focus cues improved.
	* **New**: Refreshed **Timeline View** layout; booking resource selection improved in paid versions.
	* **New**: Reorganized **Settings Pages** Structure in the left sidebar for faster access to specific settings.
	* **Improvement**: Improved accessibility support for calendar day highlighting during keyboard selection (EAA compliant).
	* **Improvement**: Enhanced time picker accessibility for keyboard users (EAA compliant).
	* **Improvement**: Allowed editing of past bookings by appending &allow_past to the booking URL. For example: https://server.com/wp-admin/admin.php?page=wpbc-new&booking_type=2&booking_hash=c5cbdef7abfa3423bb9ae8e8dd36157d&parent_res=1&booking_form&is_show_payment_form=Off&allow_past (10.10.3.2)
	* **Improvement**: If no bookings found in Booking Listing, a “Reset Filter” link appears to show all bookings.
	* **Under Hood**: Updated URL slugs for Booking Listing (&tab=vm_booking_listing) and Timeline (&tab=vm_calendar) pages.
	* **Fix**: Prevented loading of Booking Calendar News images when the news section is closed. (10.10.3.1)
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
	* **Improvement**: Updated Redsys payment system to log more detailed info if a payment fails. (2025-03-06)
	* **Improvement**: If the “Redirect to Thank You Page” option is enabled in Settings > General > Booking Confirmation, the system now redirects even when payment forms are active. Previously, it would show the confirmation on the same page. (10.10.3.3)
	* **Under Hood**: Removed support for Opayo (SagePay) as protocol 3.0 is no longer supported by the provider.
	* **Under Hood**: Removed support for the legacy PayPal Standard gateway. Only PayPal Standard Checkout is now supported.
	* ...and hundreds of other small improvements and refinements!

= 10.10.2 =
- Changes in **all** versions:
	* **Improvement**: Changed the option "Choose how to display appointment availability" in the Wizard setup  to radio  buttons selection.

= 10.10.1 =
- Changes in **all** versions:
	* **New**: Added a new form layout, "**Wizard (Steps Timeline)**", on the Settings > Booking Form page. This layout displays a wizard with a "Steps" timeline at the top of the form. It also features improved borders for a cleaner look.
	* **New**: Added ability to set **Service selection with specific duration** and start time for appointment bookings. In the Setup Wizard, you can select "Wizard (Steps Timeline) - Service Duration." This feature is ideal for appointment types based on service duration, such as salon or doctor appointments, consultations, product demos, table bookings, and more.
	* **Tip and Trick**: **Add a time duration field** in the Settings > Booking Form page with the reserved name "**durationtime**" and options like: "**Service A (15 min)@@00:15**" or "**Service D (1 hour)@@01:00**". The option format is "Title@@Time Duration," where "Title" is usually the service name and "Time Duration" is defined in the format HH:MM (HH = hours from 00 to 23, MM = minutes from 00 to 59). (10.10.1.4)
	* **Tip and Trick**: **Add a start time field** in the Settings > Booking Form page with the reserved name "**starttime**" and options like: "**8:15 AM@@08:15**" or "4:20 PM@@16:20." The option format is "Title@@Time," where "Title" is any text (typically the time in AM/PM format) and "Time" is defined in the 24-hour format (HH:MM), where HH = hours (00 to 23) and MM = minutes (00 to 59).
	* **Improvement**: Updated the timepicker color scheme to a more modern style.
	* **Fix**: Changed the booking hash by default after approval, pending, trash, or restore actions. This helps prevent unauthorized visitors from editing bookings by using outdated booking hashes. (10.10.1.1)
	* **Fix**: In the simple booking form, only show the title and value for the time slot field. Hide them for other select boxes or checkboxes to avoid duplicating data, such as "Data A / Data A." (10.10.1.3)
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
	* **Improvement**: Removed the legacy option: "Disable changing booking resource while editing a booking." (10.10.1.2) *(Business Large, MultiUser)*
	* **Fix**: Resolved an issue with using translation shortcodes in the "Warning for Missing Dates" message in the Search Form.  *(Business Large, MultiUser)*

= 10.10 =
- Changes in **all** versions:
	* **Improvement**: Automatically hide/disable past times when selecting today's date.(10.9.6.4).
	* **Improvement**: "Unavailable time from current time" now follows the local WordPress timezone. Added help tooltips in WP Booking Calendar > Settings > General > Availability.  (10.9.6.3)
	* **Improvement**: Removed default colons (:) from field labels. You can manually add them when editing forms in Simple Mode at WP Booking Calendar > Settings > Booking Form. (10.9.6.2)
	* **Under the hood**: Introduced a new JavaScript event: 'wpbc_before_booking_create', triggered before a booking is created. Developers can bind actions using: jQuery('body').on('wpbc_before_booking_create', function(event, resource_id, params) { ... });  (10.9.6.1)
	* **Fix**: Resolved CSS conflicts affecting calendar day cell width in certain WordPress themes.
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
	* **New**: Added "**Appointments Based on Service Duration**" **form template** for quick service-based bookings. (10.9.6.5)
	* **New**: Added support for **Saving "Option Titles"** in select boxes, checkboxes, and radio buttons using the format "Title@@Value". Example: [selectbox durationtime "Service A (20 min)@@00:20" "Service B (30 min)@@00:30"]. Display the title using [durationtime_val] (use configuration with  field name + "_val" sufix) or the value using [durationtime]. This feature enables better customization for service durations and other selected options with Titles and Option Value configuration.
	* **New**: Introduced a **Steps Timeline Shortcode**: [steps_timeline steps_count="3" active_step="2" color="#cd7b32"],  where steps_count="N" - defines total number of steps; active_step="X" - highlights the current step; color="#RGB" - optional parameter to customize step color. (10.9.6.5)
	* **Improvement**: "Limit available days from today" now follows the local timezone from midnight instead of UTC. Help tooltips added in WP Booking Calendar > Settings > General > Availability. (10.9.6.3)
	* **Improvement**: If "Change hash after booking approval" is enabled, the hash now also updates when moving bookings to Pending or Trash.(10.9.6.1)

= 10.9.1 - 10.9.5 =
- Find more at [this page](https://wpbookingcalendar.com/changelog/)

= 10.9 =
- Changes in **all** versions:
	* **New**: Added the ability to define unavailable intervals for specific hours and minutes starting from the current time, in addition to defining unavailable dates starting from today. (10.8.1.4)
	* **New**: Added the ability to select the "Number of months in a row" value in the Options toolbar on the WP Booking Calendar > Availability > Days Availability page. This feature enhances the display of calendar days for some calendar skins, with the default set to 3 months. (10.8.1.5)
	* **Improvement**: Added a warning message with a troubleshooting link during the 4th and 5th steps of the Setup Wizard for users with the Wordfence plugin installed. This helps address potential conflicts during setup.
	* **Improvement**: Automatically restore bookings from the Trash when they are approved. (10.8.1.1)
 	* **Improvement**: Set the input type of HTML tags for email fields to email for improved validation. (10.8.1.2)
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
	* **New**: Added support for the Redsys payment gateway via the Redsys Redirection method. This integration allows Spanish users to accept payments for bookings.
 	* **Fix** Resolved an issue with the "real-time" cost display, which sometimes showed incorrect values due to delays caused by multiple requests to the server. (10.8.1.3)
 	* **Fix** Resolved a warning issue on the WP Booking Calendar > Availability > Season Availability page. (10.8.1.6)

= 10.8 =
- Changes in **all** versions:
 	* **New** Added the ability to configure the booking form structure as a multi-step wizard in the Booking Calendar Free version. This feature enables users to complete the booking process in several steps for improved usability. (10.7.1.7)
 	* **New** Added the ability to define the number of columns in the booking form in the Booking Calendar Free version. Configure the column layout at WP Booking Calendar > Settings > Booking Form page under the "Form Layout" section. (10.7.1.6)
 	* **New** Added a 20-minute time-slot interval template for faster configuration of time slots. Access this feature on the WP Booking Calendar > Settings > Booking Form page.
	* **Under hood** Enabled the use of 'allow_past' URL parameter to show past bookings and scroll through past months on the Booking > Add Booking page in the admin panel. (10.7.1.2)
	* **Enhanced** Added new  skins: "Black-2", "Green-01", "Light-01", and "Traditional-times" to the legacy calendar skin group. (10.7.1.5)
	* **Enhanced** Disabled auto-selection of legacy calendar skins. (10.7.1.5.1)
- Changes in **Personal / Business Small / Business Medium / Business Large / MultiUser** versions:
 	* **New** Added a new **"Time-Based Appointments" form template** in a multi-step wizard style. Please reset your booking form by selecting this template from the dropdown list in the toolbar at Settings > Booking Form page. (10.7.1.4)
 	* **New** Introduced shortcodes [search_days_number] and [search_nights_number] for use in search results. Available on the WP Booking Calendar > Settings > Search page. (10.7.1.1)   *(Business Large, MultiUser)*

= 10.7 =
- Find more at [this page](https://wpbookingcalendar.com/changelog/)

== Upgrade Notice ==
= 10.14 =
Control start and end dates for booking and availability. Elementor Integration, Smart Phone Validation, Improved Sidebar Menu!

= 10.13 =
Now with Elementor Integration and Smart Phone Validation and Improved Sidebar Menu!

= 10.12 =
Pro versions now require the Free version for updates. New Skin and many small improvements.

= 10.11 =
Major admin panel redesign with a modern UI, new full-screen mode, smarter booking list, improved settings navigation, and enhanced accessibility across all Booking Calendar pages.

= 10.10 =
Better time slot availability, timezone-based settings, improved form customization, new appointment templates, booking hash security, and UI fixes!

= 10.9 =
New unavailable time intervals from the current time, Redsys payment integration, improved calendar functionality, and usability fixes.

= 10.8 =
Configure the booking form structure as a multi-step wizard to guide users through the booking process step-by-step and define the number of columns in the booking form (in free version).

= 10.7 =
Easy Setup Wizard for quick booking calendar configuration of essential booking settings.

= 10.6 =
Implemented a structured settings dashboard with brief descriptions for each feature. This update enhances user navigation, making it easier to locate and configure the desired settings.

= 10.5 =
New calendar skin with rounded day cells. Updated UI of booking form fields setup. Ability to create and use multiple custom booking forms while setup in "Simple Form" mode in Pro versions.

= 10.4 =
Discover a modern calendar skin, added new color schemes, and improved the UI in Timeline View and Booking Listing for a more seamless booking experience.

= 10.3 =
Enhanced Calendar Overview and Timeline Views, and more...

= 10.2 =
Explore Advanced Configurable Booking Confirmation, Enhanced Booking Form Typography, and more...