=== Calendarista™ === Contributors: Alessandro Zifiglio Donate link: https://www.calendarista.com Tags: booking, appointment, reservation Requires at least: 3.6 Tested up to: 5.8 Stable tag: 4.9 License: Codecanyon Regular license License URI: https://codecanyon.net/licenses/standard CALENDARISTA: PREPARE FOR GREATNESS == Description == Whether you want to book an appointment with a dentist, a hair dresser, rent out a room or you simply want to run a transport service, the booking options will vary from business to business. Calendarista™ can mix and match from a multitude of options to fit your individual requirements! == Installation == 1. Just click update, the plugin will do the rest. Your data and settings will be maintained. == Changelog == = 11.6 = * Posted on 23/02/2021 * Fixed: when using seasons that cover the same period, only the first season cost was applied. = 11.3 = * Posted on 08/02/2021 * Fixed: distance/cost calculation is much more accurate now. used to be off by a few fractions due to decimal places. * Fixed: google calendar did not sync multiple availabilities on the same calendar. = 11.1 = * Posted on 23/01/2021 * Fixed: multi date range and time mode did not calculate cost correctly across multiple days. = 11.0 = * Posted on 10/01/2021 * This update was already available via auto updates since 06/01/2021. * Fixed: Setting a fixed cost by distance wasn't calculated correctly. * Fixed: when using a round trip with distance calculation, cost did not include the return trip. = 10.9.9 = * Posted on 29/12/2020 * Fixed: google calendar sync function now gracefully handles "Invalid Grant" error. you can now delete the profile and recreate it. * Fixed: closed bookings had the next button in the wizard enabled. * Fixed: package booking without repeat and multiple days allowed booking. * Added: multi date range now supports selecting the same start day and end day (equivalent to 1 night). = 10.9.7 = * Posted on 18/12/2020 * Fixed: first time slot selected by default. = 10.9.6 = * Posted on 17/12/2020 * Fixed: maintainence, fixed a notice thrown when a certain condition was met. = 10.9.5 = * Posted on 16/12/2020 * Fixed: WordPress 5.6 compatbility. = 10.9.4 = * Posted on 12/12/2020 * Fixed: Regression bug. when booking multiple days, the cost of guests did not multiply by selected n° of days. = 10.9.3 = * Posted on 11/12/2020 * Fixed: Regression bug. Creating appointments from the backend broken. = 10.9.2 = * Posted on 10/12/2020 * Added: whitelabelling now allows hiding the following pages: places, sales, staff, season, map. * Fixed: jquery 3.x stuck in the wizard, couldnt move forward. * Fixed: multi date and multi date and time mode ignored minimum and maximum booking dates restriction. * Fixed: regression bug in woocommerce, introduced by version 10.8. = 10.8 = * Posted on 03/12/2020 * Added: new feature. You can now book multiple availabilities at a time. * Added: new feature. White-label. * Added: time slot based service modes now support setting seats per day. previously seats applied to each individual slot. * Added: multi date and time range now suports setting cost per time slot. previously it was day based only. * Fixed: jquery 3.x crashed the datepicker. = 10.5 = * Posted on 18/11/2020 * Fixed: services with no availability or time slots were erratically bookable from admin backend. = 10.4 = * Posted on 17/11/2020 * Fixed: regression bug introduced in 10.3. * Fixed: when translating the page via google translate, the calendar broke. * Added: time slots can now be displayed as deals where each slot is displayed individually. * Added: guests now add up with optional extras. * Updated: translation files. = 10.1 = * Posted on 29/10/2020 * Fixed: regression bug from 10.0 version. woocommerce checkout broken. * Fixed: booking reminders page threw errors when resending or deleting a reminder. = 10.0 = * Posted on 26/10/2020 * Fixed: regression bug (100% coupons redirected to payment operator when no payment was required). * Fixed: back-end appointment details did not show the the base cost in booking summary correctly. = 9.8.9 = * Posted on 25/10/2020 * Fixed: regression bug edit coupon page, holidays timeslot page etc. * Added: availability start date can now be in the past. = 9.8.8 = * Posted on 24/10/2020 * Added: search feature now supports opening search results in a new tab (if enabled). * Added: back-end appointments listview now supports an order by filter. * Added: back-end appointments search filter now adds searching by customer name, email and invoice ID. * Added: new feature in availability. you can now add invidiual days and additionally have them repeat montly/yearly. * Improved: cost set in availability when using new package option in single day mode now applies to entire package. * Fixed: when certain conditions were met, clicking the start date did not launch the calendar popup. * Fixed: when using the search feature and all slots were booked for the day, clicking a start or end date did nothing. * Fixed: the availability description field wouldn't get translated. = 9.8.6 = * Posted on 04/10/2020 * Added: single day mode now supports setting up a package. * Improved: cost summary now provides more relevant data regarding the current selection breakdown. * Fixed: synched feeds did not display in the appointments page (specifically when show imported appointments was enabled). * Fixed: end time string in the front-end did not get translated. = 9.8.4 = * Posted on 24/09/2020 * Fixed: search form field translations eg: Find, Select, Sold out etc. * Fixed: regression bug when trying to create an appointment from backend on service with multiple availabilities broken. * Fixed: when adding more than one service/availability in woocommerce cart, the same date from different service/availability remained unavailable. = 9.8 = * Posted on 20/09/2020 Fixed: regression bug caused by version 9.7.9 (woocommerce broken). = 9.7.9 = * Posted on 19/09/2020 * Fixed: when using multiple payment operators, paypal did not work. * Improved: when using the search filter and no dates were selected, availability will by default be checked against the current day. = 9.7.8 = * Posted on 18/09/2020 * Fixed: using multiple short-codes on a page or post did not work. * Fixed: multi date and multi date and time mode did not respect guests validation when required. * Fixed: regression bug in 9.7.7 update (couldn't create appointments in the backend). = 9.7.5 = * Posted on 15/09/2020 * Improved: google calendar sync now deletes exported appointments if these were deleted from google calendar. * Fixed: setting an image in the services->availability page did not display the image in the booking form front-end. * Fixed: season cost miscalculated when applying by week day (su,mo,tu,we,th,fr,sa). * Fixed: when using a single guest field (limit by seats), the last guest was not selectable. * Fixed: when paypal is enabled along with Multi date or multi date and time mode, booking form broke on checkout step and payment failed. = 9.7.4 = * Posted on 05/09/2020 * Fixed: a regression bug with changeover mode. * Fixed: translation of the search fields did not work if the settings->general was saved. * Fixed: when multiple payment providers are enabled, the selected payment provider radio button did not highlight the selection. * Fixed: success message after booking did not disappear when clicking close. * Fixed: when using maps and the distance is pretty large, over 1000km, the values were truncated and the wrong distance displayed. * Fixed: regression bug regarding seats in combination with guests caused overbooking. * Added: seats Max restriction if group booking is enabled. * Added: a new option in services->availability page to display/hide the remaining seats message. = 9.7.2 = * Posted on 31/08/2020 * Fixed: regression bug, multi date range and changeover accepted bookings even if there were booked out dates in between the selected range. = 9.7.1 = * Posted on 29/08/2020 * Fixed: WordPress 5.5 broke multi timeslot selection listbox. = 9.7 = * Posted on 28/08/2020 * Added: Feeds synching now supports updates and deletes. * Added: font-size setting in the settings->general page. This affects the booking form. * Updated: documentation. * Fixed: feeds synched into the system had the description truncated. * Fixed: front-end, reclicking the calendar input field without closing the calendar caused it to choke. * Fixed: stripe input fields on mobile had overlapping text. * Fixed: start date and start time did not get translated when using wpml or polylang. * Fixed: when selecting a date range with a weekly repeat pattern, validation failed. * Improved: search result now takes into consideration the availabilities Min/Max days restriction. * Deprecated: 2checkout payment operator is no longer supported. please use woocommerce in case you want 2checkout. = 9.6 = * Posted on 28/07/2020 * Added: email template new control statement: {{#if_service_id_123}}content here{{/if_service_id_123}} * Added: email template new control statement: {{#if_availability_id_123}}content here{{/if_availability_id_123}} * Added: public calendar now supports single day view * Added: search attributes. you can now create attributes from the services->search attributes page. These will be added to the front-end search form * Improved: guests with required option now uses a default value of None editable from Services -> Text page. * Improved: appointments listview now includes all booking information at a glance (custom form fields, optionals, guests, seats). * Improved: appointments page will now always open the last tab viewed first. * Fixed: stripe payments were concluded anyway even though the customer was told the booking was out of stock. * Fixed: front-end search filter did not allow searching the current date and only allowed the next day onwards. * Fixed: email reminders did not send out the reminders at the correct time and current day bookings were totally skipped as well. * Fixed: sanitized name field in the booking form to allow insertion of special characters and what not. = 9.5.6 = * Posted on 10/07/2020 * Added: drag and drop sort order for availabilities. * Added: a required option to check when creating guests. this forces the user to select any value other than 0 when selecting guests. * Added: search filter now supports setting a theme color. new option can be found in the Settings -> General page. * Improved: The booking date and time is now included in paypal item title. * Improved: Google calendar sync will now use customer name and seats booked in the title instead of generic servicename - availability name. * Fixed: regression bug. PHP 5.3 compatibility, though this is getting quite old so dont expect miracles in the future. * Fixed: twenty twenty wordpress theme compatbility. Font sizes and pretty much form elements appeared shrunk. * Fixed: public calendar displayed a gridview in tablet portrait mode even when you specified you want it to display as a list. * Fixed: public calendar now respects first day of week set in settings->general. = 9.5.4 = * Posted on 30/06/2020 * Added: Single day and time range now supports group booking. * Fixed: improved guests to respect the remaining seats value when group booking is not enabled. * Fixed: ical feeds description truncated the extra info such as seats, custom form fields, guests, etc. * Fixed: saving style template in services -> styles -> advanced caused styling issues. = 9.5.3 = * Posted on 26/06/2020 * Added: WordPress CRON job support for Google Calendar. Previously only True CRON jobs were supported. * Fixed: removed dependency on php-mbstring. = 9.5.2 = * Posted on 23/06/2020 * Fixed: Multi date and time range did not multiply optional extras x selected days. * Fixed: booking form messed up when setting thumbnail or font-family with style 'none'. * Fixed: regression 9.5 version, caused a spinning wheel loading forever when viewing the booking form. = 9.5 = * Posted on 16/06/2020 * Added: Google calendar now has a manual sync option. * Added: Google calendar now has a manual delete option that deletes imported/exported data on an availability. * Fixed: Google calendar did not sync customform fields, guests etc. * Fixed: 3d secure on Stripe had some issues on the new API. Migrated old code to the new API. * Fixed: changeover days with seats did not allow check-in/check-out on changeover even though there were still seats left. * Fixed: calendar allowed selecting unavailable days when certain conditions were met. = 9.4.9 = * Posted on 11/06/2020 * Added: public calendar now supports weekly listview * Fixed: invoices are now only sent on bookings that opt to pay offline. * Fixed: padding time was not showing in the backend timeslots page when using single day and time with padding mode. * Fixed: single day and time with padding ignored seats when group booking was enabled. = 9.4.8 = * Posted on 08/06/2020 * Fixed: regression bug, custom charge was not applied. * Fixed: when using decimal based values for cost, stripe did not work. rounding now. = 9.4.7 = * Posted on 29/05/2020 * Added: New option in Settings->Payments page to change the number format. You can now set your own decimal and thousands separator. * Added: Single day and time with padding service mode now supports seats and group booking. * Added: Round trip with time now supports setting cost at the time slot level. * Fixed: oxygen builder failing? This is due to debug mode being enabled for AJAX requests which caused issues with third party plugins that threw warnings. * Fixed: When using a service mode with the end date, moving back and forth within the wizard caused wrong date selection. * Fixed: When using inclusive tax mode, the back-end appointments page displayed exclusive tax amount when viewing the details. = 9.4.6 = * Posted on 16/05/2020 * Fixed: single day and time email notification displayed a date range message when the appointment is only for a single slot. * Fixed: when using seasons without pricing scheme, the cost calculation only included the season cost while truncating any selected days outside the season. * Fixed: deleting imported feeds did nothing. * Fixed: when timezone is enabled on the availability, the first available date is in the past. * Added: importing feeds will now take into account timezone if one is present. exporting feeds to ics now includes the timezone set in wordpress. = 9.4.3 = * Posted on 08/05/2020 * Fixed: woocommerce Single Product Sale Flash compatibility fix. * Fixed: when syncing an appointment from google calendar, this did not block appointments in the front-end. A regression bug. = 9.4.1 = * Posted on 06/05/2020 * Fixed: when google calendar sync is enabled, placing a booking caused errors. A regression bug. = 9.4 = * Posted on 05/05/2020 * Fixed: when using a short-code of a service that does not exist, we handle this gracefully now. * Fixed: regression bug, fixing a second time: single day and time range mode missed a slot. * Fixed: when using a coupon with fixed cost, payment was still required if the total amount was zero. * Fixed: when using a fixed coupon, if the value exceeds the total amount, it is considered invalid and will not apply. * Fixed: when using a service with membership enabled, switching from new customer to returning customer, threw warnings. * Fixed: deleting a sale record now works correctly. = 9.3.9 = * Posted on 01/05/2020 * Added: search filter now allows adding any custom post type, so should work with most listing themes. * Fixed: cancel url in email notification was missing start and end dates. * Fixed: regression bug, where timeslots being booked ignored seats. = 9.3.7 = * Posted on 22/04/2020 * Fixed: deleting an availability that previously had bookings did not delete appointments, leaving orphaned records. * Fixed: woocommerce bookings that had tax applied displayed cost without tax in the backend sales page. * Fixed: some systems displayed a mustache templating engine warning. * Fixed: short-code tab in services displayed a warning stating that a service selection is required, when it is not. = 9.3.5 = * Posted on 20/04/2020 * Fixed: when including multiple short-codes on the same page, if the services had optional extras the plugin will choke. * Fixed: optional groups that are to multiply cost by seats displayed 0 cost when navigating away from optional step backwards and returning back to it. = 9.3.4 = * Posted on 16/04/2020 * Fixed: Multi date mode did not caculate custom charge. * Fixed: Multi date mode did not calculate pricing scheme. * Fixed: sales page bugged after viewing an order detail. * Fixed: woocommerce product type calendarista now allows setting the individual product as taxable with tax class and also inventory. * Fixed: sales page now provides a button that links an order to woocommerce. = 9.3 = * Posted on 25/03/2020 * Fixed: guests did not deduct seats if group booking wasn't enabled. * Fixed: regression bug: single day and time range mode missed a slot if this was previously booked. * Added: 2 new service modes: Multi date and multi date and time. Allows booking multiple dates that are not in sequence. = 9.2.7 = * Posted on 09/03/2020 * Fixed: stopped using utf8_encode as some PHP versions do not ship with this by default. * Fixed: woocommerce checkout was broken due to recent 9.2 update. = 9.2.6 = * Posted on 09/03/2020 * Fixed: regression bug, bookings broken. * Fixed: search broken, regression bug. * Fixed: optimization for speed. most notable in changeover mode. * Fixed: regression bug: Paypal bookings not registered after payment. = 9.2.4 = * Posted on 08/03/2020 * Fixed: optimization for speed. most notable in changeover mode. * Fixed: regression bug: Paypal bookings not registered after payment, please update :( = 9.2.2 = * Posted on 03/03/2020 * Fixed: regression bug. Editing an appointment in the backend was broken. = 9.2.1 = * Posted on 29/02/2020 * Fixed: holidays page time off dialog missing translation. * Fixed: misc inconsistencies. = 9.2 = * Posted on 28/02/2020 * Fixed: currency symbol not showing. regression bug. * Improved: revamped guests functionality. more intuitive and now seats will be spread around all guest fields. * Fixed: unavailable slots strikethrough appeared as an underline. * Fixed: sync'd appointments in listview did not display the appointment details when clicking the edit button. * Fixed: search end date is no longer set by default. * Fixed: race condition which can cause overbooking, if two people try to book the same appointment, the first to checkout wins. * Added: new email notification to inform customer that a race condition. * Updated: french and italian language files. = 9.1 = * Posted on 08/02/2020 * Fixed: checkbox text overflow hiding part of the text. * Fixed: search filter result did not link to the correct service/availability if the result item did not match the search date. * Fixed: search filter not returning results correctly if the availability had a termination date. * Fixed: miscellaneous bug fixes and PHP 7.3+ warnings in our integrated third party updater. = 9.0 = * Posted on 05/02/2020 * Added: Search. You can now add a search filter to find available bookings, check example: https://www.calendarista.com/car-rental/ * Improved: places aggregate cost list is now paged. * Updated bootstrap to latest version 4.4.1 * Fixed: when editing an appointment in the back-end, where the availability was changed, the update did not take place correctly. * Fixed: staff member did not receive a notification if the user making the booking was logged in to WordPress. = 8.8 = * Posted January 03, 2020 * Improvement: UI color enhancements to overall tabs and booking form. * Fix: with woocommerce enabled, some webservers have an issue with early call to WC() function, which broke the details step. = 8.5 = * Posted December 17, 2019 * Added: backend appointments calendar will auto translate based on your WordPress locale and will switch to listview in responsive mode. * Added: new short code generator in appointments page to display all your public appointments so these are visible within a full calendar in the front-end. * Improved: negative cost in optional extra now show the cost as a discount. * Improved: auto filling woocommerce billing name and billing email in checkout page. data also remembered when coming back to the booking form from woocommerce checkout/cart. * Fixed: bookings that were already in a cancelled state, send out a booking cancel notification when deleted by admin. * Fixed: the new email template tokens introduced in 8.2 were not printing the correct date and time. * Fixed: first day of week option was doing nothing to the font-end calendar. * Fixed: several text strings that were not translatable in the plugins back-end. * Fixed: text strings that were not getting translated when loading timeslots eg: start time place holder text and the reset label. * Fixed: setting empty values in Services->Map page did nothing. * Fixed: setting the booking start date in the availability settings, to a date in the future (1month+) caused issues in the frontend calendar when clicking the clear button. * Updated: translation files. = 8.2 = * Posted December 6, 2019 * Added: new short-code [confirmation-message] that can be added to the designated custom confirmation page. * Added: new tokens for email templates that separate date from time: {{start_date}}, {{start_time}}, {{end_date}}, {{end_time}} * Added: French translation. * Fixed: regression bug in appointments page where time was displayed with an hour difference. * Fixed: miscellaneous strings that were missing translation. * Fixed: some css conflicts with themes where overall text appears to be too small, along with the form elements. * Fixed: regression bug, using custom charge if selected num of days exceed the minimum requirement, did not apply. * Fixed: optional group did not display the cost correctly with a mode that calculates by seat. = 8.1 = * Posted November 26, 2019 * Fixed: stripe payments that are not 3d secure/SCA will redirect to success page after a successful operation. * Fixed: when creating/editing woocommerce regular product type pricing, it reset automatically to 0. * Fixed: regression bug, the current day in the front-end calendar was always unavailable for booking. = 8.0 = * Posted November 14, 2019 * Added: stronger woocommerce support with misc fixes. now the booking form will automatically get added to woocommerce product pages and behave as any product. * Added: when creating the woocommerce calendarista product, opened up more options. product is also no longer hidden from catalog etc. * Added: check the new woocommerce demo page: http://bit.ly/calendarista-woo * Added: email subject now supports all tokens supported in the email body. * Added: the email master template is now editable from the settings->emails page. * Fixed: a piece of string in the gdpr compliance page was not translatable. = 7.9.7 = * Posted November 6, 2019 * Fixed: in case there is no availability in the current month, the next first available date will be hilighted on the front-end calendar. * Fixed: appointments page listview edit button did not work, regression bug. = 7.9.6 = * Posted November 1, 2019 * Fixed: multi date and time range allowed booking a discontinous period when the end date fell on a month after the start date. * Fixed: when taking a holiday on a single day and time range mode, you could book slots even though the slots in between the start and end were unavailable. = 7.9.5 = * Posted October 27, 2019 * Updated: fullcalendar used in the backend now uses the latest v4 release(This is the back-end calendar in the appointments page). * Fixed: slight ui misplacements (borders, spacing, margin etc in the dialog) when editing an appointment in the back-end. * Fixed: single day and time range now shows a date as unavailable if there are no available slots for the day. * Fixed: regression bug when using pricing scheme, the calcuated cost is wrong. = 7.9.3 = * Posted October 22, 2019 * Fixed: Google Calendar sync ignored timezone. * Improved: Google Calendar sync code refactored. = 7.9.2 = * Posted October 17, 2019 * Fixed: synchronizing time set in google calendar was not getting blocked in the front-end when using single day and time mode. * Fixed: when creating a service without an availabilty, the plugin broke in the front-end instead of showing a booking form that has no bookings. * Fixed: when trying to syncronize appointments where time is involved, on some circumstances, if there was a previous appointment on availability (A), then availability (B) still allowed the booking. * Fixed: round trip with time mode was broken when selecting return with seats enabled. = 7.9.1 = * Posted October 16, 2019 * Fixed: regression bug introduced in 7.9 update, couldn't create a new service or update an existing one. = 7.9 = * Posted October 14, 2019 * Updated: bootstrap to latest version 4.3 * Improved: UI changes, now we use tabs, cleaner revamped bordered layout, new buttons, better colors. * Remember: Due to UI changes, before updating if using styles, please remember to reset the style in Services - Styles page as the template has changed. * Added: Services now allow setting an image that will be displayed in the booking form header area. * Added: Stripe support for SCA. * Fixed: The front-end calendar now shows the first available date instead of the current date. * Fixed: changeover mode now no longer allows checkin on a day that was previously checkin, instead allows only checkout. same applies for checkout. * Fixed: package mode now does not show a dropdownlist selection but only the single item when there is just a single package. * Fixed: package mode did not show description. * Fixed: when setting seats minimum with your timeslots, the whole day got booked after a single booking. * Fixed: sales page did not allow deleting a sale after the first sale was deleted and required a page refresh. * Fixed: setting a season did not apply the season cost, specifically when using service mode of type multi date range & changeover. = 7.8.5 = * Posted August 25, 2019 * Fixed: tax set in woocommerce was not applied in calendarista but only the woocommerce order. = 7.8.4 = * Posted August 24, 2019 * Fixed: google maps direction service was using km even when miles was the active unit system. = 7.8.3 = * Posted August 20, 2019 * Improved: sales page, now fully ajax enabled, much faster and less time wasted waiting for page reload. * Fixed: single day service mode did not sync with google calendar. * Fixed: map unit type showed miles when km was the active unit type. = 7.8.2 = * Posted August 13, 2019 * Fixed: updated google calendar instructions (7.8.2) * Fixed: miscellaneous bugs relating to coupon code creation (7.8.1) * Fixed: some strings in the back-end were not translation ready. * Fixed: calendar next/prev buttons unusuable in rtl mode. * Fixed: slight improvements in calendar next/prev buttons and title bar. * Fixed: When a new booking is placed, google calendar failed to update, reported missing file error but was actually typo in class name. * Fixed: custom charge percentage value added base cost along with the percentage. now it just uses the percentage cost. * Fixed: coupon edit dialog didn't allow editing code or changing the mode. * Fixed: creating a coupon with the same code is no longer allowed. * Fixed: when using maps aggregate cost, the cost was not displayed correctly in the back-end sales and appointments page. * Fixed: miles/km unit type displayed the wrong type in booking summary as you navigated the wizard steps. * Fixed: no more than 10 products were listed when selecting a woocommerce product in the services page. * Fixed: woocommerce coupons were not reported in calendarista. * Fixed: creating appointments from the backend did not include the routing cost when using departure/destination etc. * Added: miles/km setting in places - general page. * Improved: staff members page now fully ajax enabled, faster and less time wasted waiting for page reload. * Improved: coupons page now has a search filter and is fully ajax enabled. * Improved: error messages from payment processors such as stripe and 2checkout in case payment fails. = 7.8 = * Posted August 6, 2019 * Fixed: some strings in the back-end were not translation ready. * Fixed: calendar next/prev buttons unusuable in rtl mode. * Fixed: slight improvements in calendar next/prev buttons and title bar. * Fixed: When a new booking is placed, google calendar failed to update, reported missing file error but was actually typo in class name. * Fixed: custom charge percentage value added base cost along with the percentage. now it just uses the percentage cost. * Fixed: coupon edit dialog didn't allow editing code or changing the mode. * Fixed: creating a coupon with the same code is no longer allowed. * Fixed: when using maps aggregate cost, the cost was not displayed correctly in the back-end sales and appointments page. * Fixed: miles/km unit type displayed the wrong type in booking summary as you navigated the wizard steps. * Fixed: no more than 10 products were listed when selecting a woocommerce product in the services page. * Fixed: woocommerce coupons were not reported in calendarista. * Fixed: creating appointments from the backend did not include the routing cost when using departure/destination etc. * Added: miles/km setting in places - general page. * Improved: staff members page now fully ajax enabled, faster and less time wasted waiting for page reload. * Improved: coupons page now has a search filter and is fully ajax enabled. * Improved: error messages from payment processors such as stripe and 2checkout in case payment fails. = 7.7 = * Posted July 4, 2019 * Added: smtp settings for emails. this will ensure your mail does not end up in spam as this authenticates the plugin to send mail. * Added: the cost of an optional extras can now multiply by selected day/timeslot and seats combined. * Added: honeypot captcha to solve rather unusual edge cases. * Added: guests are now included in csv export. * Fixed: editing the cost of a guest item simply did nothing. * Fixed: single checkbox and radio button items created by custom form builder threw an error when you had a single item not set through the content field. * Fixed: regression bug. translations weren't displayed after the first step. * Fixed: inconsistent behavior with how cost is applied via availability when using the custom charge based on a determined number of days. * Updated: documentation. = 7.6.2 = * Posted June 15, 2019 * Fixed: cost applied via season was not reflected in the appointment summary. * Fixed: when adding other products in woocommerce that are not of type calendarista, product name was not showing. * Fixed: some translations done via wpml or polylang never got translated due to early load and exit by our ajax engine. * Fixed: Indian ruppes had the wrong currency symbol. = 7.6 = * Posted June 7, 2019 * Added: Native support for Google Calendar, two-way sync. * Added: New option in places - aggregate cost page to allow excluding departure/destination combo. * Fixed: timeslots not sorted in order when trying to take timeoff using the holidays page. * Fixed: woocommerce integration used a deprecated function which caused checkout page to show a session expiry error. * Fixed: regression bug in services - map page. selecting an availability took you away from the page. * Fixed: bookings as long as a month or longer were not being shown in the appointments page nor reflected as booked in the front-end. * Fixed: list of feeds on the feeds page had pager broken. * Fixed: regression bug, a service mode with multi date and time range ignored seats more than 1. eg: 5 seats were treated as 1. * Fixed: when using multiple services switcher, the package mode did not maintain the service list after a package was selected. * Fixed: round trip mode booked all dates in between the departing and return dates. now only the start and end dates get booked. * Fixed: round trip with time mode now does not allow booking a return trip on the same day if available slots are not continous. * Fixed: minimum seats requirement was not applied across all service modes. * Fixed: when using coupons, checkout with a payment operator excluded the tax value. * Fixed: GDPR email did not have the correct sender name. * Fixed: on some setups, when using multiple services, the first selected service was always shown in the default language resource. * Fixed: multi date and time range service mode did not sync correctly when multiple availabilities were involved. = 7.5 = * Posted April 23, 2019 * Fixed: changeover mode with multiple seats didn't allow rebooking check-in/check-out days, even though there were additional seats left. * Fixed: season cost did not deduct from total when fixed cost was used. * Added: new option in the feeds page to filter by appointment status. = 7.4 = * Posted April 18, 2019 * Fixed: updating an appointment from the back-end doubled the cost. * Fixed: updating an appointment from the backend, when using a multi date range mode, the start date didn't allow selection. * Fixed: when switching availability while updating an appointment from the backend, the appointment was updated wrongly and reset the form fields as well. * Fixed: appointment page, list view did not maintain search filter when paging. * Fixed: optional extra, such as the ones in a dropdown list displayed cost after tax. * Fixed: map with departure and destination did not show summary on the route step and several other inconsistencies solved. * Fixed: optional item with zero cost was showing cost value in summary even when service mode had payments set to none. * Added: kuwaiti dinar currency. * Added: deposit label in woocommerce checkout/cart with balance required upon arrival. * Added: new token {{appointment_management_url}} to add in new booking notification for admin/staff. if email template has not been modified, this is already included by default. = 7.3 = * Posted April 8, 2019 * Fixed: 24h format was being ignored. * Fixed: appointments in the backend calendar spanned an extra cell. * Fixed: ical feeds spanned an extra day and time was also ignored on some service modes. * Stay tuned, this is an important but minor update. More updates in the works... = 7.2 = * Posted April 4, 2019 * Fixed: appointments listed in back-end are now listed by appointment date when a date search filter is applied. * Fixed: regression bug, single day and time mode blocked available dates when one or more slots had no seats left. * Stay tuned, this is an important but minor update. More updates in the works... = 7.0 = * Posted April 3, 2019 * Fixed: appointments in the back-end, displayed a link to the sales page even when appointment had payments disabled. * Fixed: optional extras that had negative cost did not display cost in the booking summary. * Fixed: single day and time range mode now considers cost by time range i.e. each slot cost will count towards the total amount. * Fixed: single day/multi date and time range now allow booking the entire range of available slots. * Fixed: single day/multi date and time range now correctly disallow slots if the range is not continous (previously fixed but had a bug). * Fixed: round trip with time now does not allow booking the return date/time if it has run out of seats. * Fixed: add to calendar discarded time when the service mode was multi date and time range. * Added: date range filter in the back-end appointments page (list view). * Stay tuned, more updates in the works... = 6.9 = * Posted March 24, 2019 * Improved: "multi date and time range" mode now does not allow over booking. * Fixed: appointment time was wrong in the email notifications when setting a timezone in the availability. * Fixed: time ignored in google add to calendar button, when appointment was for a single day/time. * Fixed: regression bug with seats and timeslots. After last seat was booked, system did not block the slot from further booking. * Added: option to send out an appointment cancelled notification to customer when deleting an unconfirmed booking. * Stay tuned, more updates in the works... = 6.8.2 = * Posted March 12, 2019 * Fixed: regression, time format setting was not respected, hence if you tried to set a 24h format, this was ignored. = 6.8.1 = * Posted March 10, 2019 * Fixed: 6.8 had debug mode enabled in production code. = 6.8 = * Posted March 9, 2019 * Fixed: when using long names for week days, the days were always in english in the booking summary. * Fixed: timezone solution was wrong when using timeslots with timezone enabled on availability. * Fixed: single day and time (listbox multi selection) and single day and time range allowed booked a range even though slots in between were out of seats. * Fixed: strings with quotes in them were displayed with a forward slash escape sequence. * Fixed: the booking form in the front-end displays the wizard breadcrumb always now when in responsive mode. the toggle button has been removed. * Fixed: staff member not able to setup holidays. The availability filter never loaded, now resolved. * Added: min/max notice is now supported by service mode of type single day and time range. * Added: new option in settings - general page to disable booking cancelled notifications sent to customer when staff cancel a booking. * Fixed: the add to calendar links generated after a successful booking had the wrong time (was always an hour ahead depending on timezone). * Stay tuned, more updates in the works... = 6.7 = * Posted March 4, 2019 * Fixed: regression bug, "services - style" page redirected away to a separate page when selecting advanced option. * Added: Add to calendar links (ical, outlook and google) are now added to the booking success message. * Added: Add to calendar links in email notification. Look for the tokens you can use in the email settings page itself. * Stay tuned, more updates in the works... = 6.6 = * Posted February 28, 2019 * Added: Guests field, which can be used to create selection for an unlimited number of guest fields eg: children, people etc whose value can range based on selected seat value along with associated cost. * Fixed: woocommerce cart allowed changing quantity when group booking is enabled in calendarista with seat selection of value 1. * Fixed: when navigating the front-end wizard, scroll position is now maintained towards the start of the form. * Fixed: group booking selection is now maintained when moving backward in the booking form. * Fixed: email settings page reset button is now enabled only if a template has saved changes. * Fixed: front-end calendar would reset after navigating using the calendar next/previous buttons, which resulted in making unavailable dates bookable. * Fixed: availability start and terminate time is now in 24 hour format. * Fixed: export to csv date selection now correctly allows selecting a date range in the past. * Added: export to csv now has a filter for appointment status and includes a status column in the generated csv file. = 6.5 = * Posted January 28, 2019 * Fixed: pricing scheme in the availability page listed all schemes, including also those in seasons. * Fixed: sales page wasn't showing the correct payment date. * Fixed: in multi date and time range mode, when selecting the end date, the start time was reset. this is bad ux, fixed. * Fixed: predefined departure and destination lists now maintain the selected value instead of using the original latlng address. * Fixed: subtotal now includes optional extras. * Fixed: admin was not receiving the booking cancelled notification. * Added: appointment page in backend now has a listview. * Added: new autogen feature for pricing scheme in case you wanted to apply the same cost to a range of days. * Added: payment_date token to email templates. check the tokens section under settings - emails page. = 6.4 = * Posted January 4, 2019 * Fixed: when no timeslots are available or time off is taken, that particular date remains disabled in the front-end. * Fixed: time range inconsistencies, mainly what 6.3 did not solve. = 6.3 = * Posted December 30, 2018 * Fixed: time range on the start time was missing a slot even when the date range wasn't on the same day. * Fixed: some themes override the plugins css, so tried to override and enforce our rules. = 6.2 = * Posted December 23, 2018 * Fixed: regression bug, pricing scheme was not applied if a season was not used. = 6.1 = * Posted December 22, 2018 * Merry christmas to you all. Thanks so much for supporting our efforts! * Fixed: pricing schemes across seasons now applies cost correctly. = 6.0 = * Posted December 21, 2018 * Fixed: when using multi date and time range where one or more days fell within a new season, only the previous season was taken into account. * Fixed: when making payment with woocommerce, pricing scheme cost value was not reflected in the order after sales. * Fixed: multi date and time range service mode appointments in the sales page was showing without the associated cost. * Fixed: single day and time range allowed selecting the same from/to time. = 5.9 = * Posted December 19, 2018 * Fixed: regression bug, add waypoints button on some systems failed. * Added: new token in emails to display the total amount paid: {{total_amount_paid}} = 5.8 = * Posted December 15, 2018 * Fixed: sales page date filter now produces the desired results. * Fixed: optional extras to be multiplied per day was broken. = 5.7 = * Posted December 11, 2018 * Added: woocommerce thumbnail in cart. * Added: woocommerce group booking now reflects in quantity. * Added: woocommerce return to book more takes into account inventory. * Added: default value for billing information country field, can now be set in the settings - payments page. * Added: new action with a single argument. Usage: add_action('calendarista_checkout_step', 'on_checkout_step_load', 1, 1); * Added: front-end calendar disables days for which timeslots are unavailable. * Added: an availability calendar is not displayed in the front-end if there are no appointments left. * Fixed: credit card fields placeholders were missing translation. * Fixed: optional item quantity now correctly shows out of stock when running out of quantity. * Fixed: multi date range with time, the end timeslots now incudes all slots defined if start and end date arent the same. * Fixed: creating custom charge by percentage was calculated wrong. * Fixed: updating an appointment in back-end that had a discount coupon applied produced wrong total amount. * Fixed: fixed deposit amount greater than the cost will be ignored now. * Fixed: tax is now applied to both the remaining balance and upfront deposit. * Fixed: {{total_cost_value}} token now outputs the entire cost of the appointment when using deposits. previously, this output the deposit amount. * Fixed: some themes conflicted with credit card payment panels, which never showed when selecting a payment mode. bootstrap collapse script is now prefixed. * Fixed: a subtotal of $0.00 was displayed in the booking summary, even though there is no cost set. correct behavior is to not show it at all. * Fixed: multi date range and time mode now syncronizes appointments between availabilities correctly. * Fixed: woocommerce item cleared from cart unexpectedly. * Fixed: when timezone is enabled, the appointment summary wasn't showing the correct time. * Fixed: time range bookings now reset the summary after a date selection, where time is not yet selected. * Fixed: stronger support for special characters such as german umlauts in email sender name, subject and set explicit utf-8 encoding to the content. = 5.6 = * Posted November 14, 2018 * Fixed: the new feature pricing scheme had the seasonId column missing. = 5.5 = * Posted November 13, 2018 * Fixed: removed debug mode, shouldn't have been in release. = 5.4 = * Posted November 13, 2018 * Fixed: when duplicating a service, timeslots were not duplicated. * Fixed: autogenerating timeslots didn't always produce the expected results. * Fixed: coupon status showed unused when already claimed. * Fixed: coupon discounted total amount was not showing in emails and sales. * Fixed: setting seats caused issues with the seat miniumum value. * Improved: woocommerce display of product information in order review and cart. * Added: New feature, pricing scheme, where you can set custom cost by number of days being booked. * Added: New feature for multi date and time range, where time can be made figurative (simbolic). Useful for parking space or tent rentals etc. * Added: New feature, custom confirmation page is now supported. Option can be found in the settings page. * Added: New feature, adding up optional cost by each timeslot select or slots in a time range are now supported. * Added: New feature, email notification to alert admin of cancelled bookings. Needs to be enabled in settings page. = 5.3 = * Posted October 17, 2018 * Fixed: coupon discount applied to total summary but not applied during payment. * Fixed: optional extra cost was doubled when return wasn't selected. * Fixed: season cost did not apply to round trip mode. * Fixed: calendarista woocommerce product type is now virtual, eliminating shipping information. * Fixed: billing info was not saving the details for return customers. * Fixed: inclusive tax mode was applying tax to the total. * Improved: next/previous month nav button in calendar does not allow sporadic clicking. = 5.2 = * Posted October 5, 2018 * Fixed: maps autocomplete filter was only returning geocoding results, and excluding business results. * Fixed: setup with multiple services and multiple availabilities, switching availability caused service selection to disappear. * Fixed: regression bug concerning seats and timeslots. You weren't able to book more than 2 seats. * Fixed: on slow latency network, customers were able to move forward in the wizard before the timeslots loaded. * Improved: background ajax requests speed in the wizard front-end when selecting dates/timeslots etc. = 5.1 = * Posted October 3, 2018 * Fixed: appointments that had waypoints weren't showing in the appointments calendar. * Fixed: some parts of the app broke when using special characters such as ø, ä etc. = 5.0 = * Posted September 24, 2018 * Improved: optional extras min requirement and required restrictions are strict now. * Fixed: with multiple staff members setup, all staff members were emailed. * Fixed: service provider name in the staff member email was the admin user instead of the staff member name. = 4.9 = * Posted September 12, 2018 * Added: Staff members can now create new appointments from the backend. * Fixed: Staff member wasn't receiving email. * Fixed: minimum seats wasn't deducted from the pool of available seats if group booking wasn't enabled. * Fixed: regression bug with timeslots, range timeslots etc and seats. = 4.8 = * Posted September 9, 2018 * Added: Seats restriction (Minimum seats) to time slot based bookings. * Added: Seasons now include a bulk delete option. * Added: Seasons now allows you to target specific days of the week within range. * Fixed: Timezone wouldn't allow you to set it to none if you had a timezone set wordpress setting page. * Fixed: Single day and time range mode was a slot behind after booking with seats enabled. * Fixed: Checkout with creditcard shrunk the cc related fields in responsive mode. * Fixed: Waypoints were missing in booking summary. * Improved: PHP 5.2 compatibility. * Improved: Custom form field plain text had a 256 character limit. Now unlimited. = 4.7 = * Posted August 15, 2018 * Fixed: Regression bug, last update broke timeslot seats. * Fixed: Improved service synchronization. = 4.6 = * Posted August 15, 2018 * Added: service availabilities can be synced with one another. When enabled, booking on one availability wont allow booking the same date on another. * Added: description field in availability. Now a selected availability will show description in the wizard if active. * Added: minimum seats requirement implemented. * Added: approved, pending approval and cancelled legend in the backend appointments calendar. * Added: # of nights stay label to booking summary via new token: {{#if_has_nights}}{{/if_has_nights}} and {{nights_label}} * Added: new map link token you can add to email notifications {{#if_has_map_link}}{{/if_has_map_link}} and {{map_link}} * Added: new tax amount token you can add to booking summary: {{tax_amount}} * Fixed: miscellaneous fixes to changeover mode for correct behavior (cost calculation). you may not notice this change. * Fixed: you can no longer checkin and checkout on the same day for changeover mode. * Fixed: Staff members were limited to a single staff member per availability. * Fixed: Multi date range with time was one slot behind, in short there was a slot missing. * Fixed: min/max days validation in back-end availability page. = 4.5 = * Posted July 20, 2018 * Fixed: changeover days regression bug. The seats were not getting applied. * Fixed: spanish translation. = 4.4 = * Posted July 19, 2018 * Added: extended seats support to "multi date range", "multi date and time range" and "changeover" mode. * Added: extended season support to "multi date and time range" and "round trip with time" mode. * Added: extended turnover days (prep time) and min/max notice to all modes excluding package and padding. * Added: user submitted spanish translation. Many thanks to Juanjo. * Fixed: custom form fields separator and placeholder weren't updating. * Fixed: sales page details view, couldn't delete an appointment in firefox. * Fixed: booking received success email worded incorrectly. * Fixed: places page, disabling destination wasn't getting saved. * Fixed: if a only a check-in or only a check-out date fell within a season then cost was wrong (affects changeover mode). * Fixed: feeds with timeslots that didn't match the source exactly were not accounted for. * Fixed: staff members couldn't be created on a service of type package. * Fixed: when applying coupons in the checkout step, name and email were not showing in the summary. = 4.3 = * Posted July 3, 2018 * Fixed: syncing google calendar feed with plugin had the wrong time. * Fixed: syncing google calendar feed with plugin did not disable the time if the appointment was booked in gcal. = 4.2 = * Posted June 29, 2018 * Fixed: regression bug introduced in 4.1. optional fields in round trips not working. * Fixed: distance duration was off in the notification emails, if the travel distance was greater than 16mins. * Fixed: optional extra negative cost wasn't working. * Fixed: when resetting availability map, nothing happened. = 4.1 = * Posted June 29, 2018 * Added: GDPR compliance. * a) A new GDPR page in settings. * b) A gdpr notification email is sent to the customer containing a link which allows: * b.1) Downloading appointments in csv format. * b.2) Request data deletion. * c) Admin receives the request and complies with the request. * Added: book unlimited times option to the changeover mode * (Attention: Ensure you have checked the new option "Book once" in "services - availability" page for default behavior after this update) * Added: new option in settings - payments page to set currency symbol placement (automatic or manually set left or right to currency value). * Fixed: site name used in email footer if it had quotes, these were converted to the html character code. * Fixed: when there is no availability, you could still navigate between steps in the wizard. * Fixed: coupons emailed had no sender name and address. * Fixed: csv export mismatched columns for custom form fields and optional extras etc. * Fixed: time was incorrect when syncing ical feed with an external calendar. * Fixed: only the first terms and conditions worked when adding multiple terms via the custom form fields. * Fixed: map travel distance defaulted to miles in email notifications even though the unit type was set to km. = 4.0 = * Posted June 8, 2018 * Fixed: services - map page miscellaneous bug fixes. * Fixed: emails had the default background color of white by default. = 3.9 = * Posted June 6, 2018 * Added: new phone number field in custom form builder (by country, supports masks and number validation). * Added: new tokens for emails {{tax}}, {{tax_rate}}, {{deposit}}, {{deposit_amount}} and {{balance_amount}} with respective control statements. * Fixed: sales page in back-end datepicker erratic when clearing dates. * Fixed: regression bug; the map section in the services page did not allow setting a map when an availability was selected. * Fixed: regression bug; the styles section in the services page did not allow selecting the advanced option. * Fixed: auto confirm only after payment now works as intended. * Fixed: multi date range with time was missing time in notification emails. * Fixed: single date and time range had an anomaly where timeslots weren't reset to a fresh state when changing date. * Fixed: resending email reminders was broken. = 3.8 = * Posted May 24, 2018 * Added: seasons support. Applies to service modes that do not include timeslots. * Added: {{customer_email}} token to emails * Improved: Days with timeslots are now unavailable in the calendar if all timeslots are set as timeoff via holidays. * Improved: CSV data exported is now organized better with all fields within their respective columns. * Improved: datepicker on sales page now has a clear button to clear the date fields and a search by name filter. * Fixed: email header and background color setting did not apply even if you changed this in the email settings. * Fixed: date formats weren't respected correctly and missing zero padding when necessary. * Fixed: when confirming payment in backend, the appointment wasn't automatically approved. * Fixed: regex field found in the custom form builder did not work. * Fixed: the end date was blocked from booking if it was a changeover day (affects multi day changover mode only). * Fixed: when stripe or twocheckout are the only payment operators, the creditcard payment form did not display. * Fixed: autogenerated timeslots choked in frontend if you had an exotic timeformat set in wordpress general settings. * Fixed: exported feeds spanning multiple days were always one day short when exporting to google calendar. * Fixed: check-in/check-out on sunday was ignored and miscellaneous bugs that affected changeover days. * Fixed: changeover days that included check-in/check-out on the same day is miscalculated. * Fixed: changeover days mode allowed selecting a range when the range consisted of changeover days. = 3.7 = * Posted May 12, 2018 * Fixed: regression bug, checkout with woocommerce was broken. = 3.6 = * Posted May 11, 2018 * Fixed: coupon with fixed discount were restricted to the value 100. * Fixed: generated iCAL feeds did not conform to the structure google calendar was expecting, now rewritten. * Fixed: if you had stripe or 2twocheckout payments disabled, the relating clientscripts will still inserted in the page. * Fixed: when creating a new appointment from the backend appointments page, sometimes the navigation buttons did nothing when clicked. * Added: new delete all option for feeds that will delete all synced data along with the feed being deleted. = 3.5 = * Posted May 5, 2018 * Added: feeds synchronization timeout now can be controlled from feeds page. * Added: inclusive tax which will show on individual costs such as optional extras if enabled in the settings. * Fixed: checkbox list and radio button list did not display the label field. * Fixed: textbox and textarea showed their label in the booking summary when empty. * Fixed: dynamic strings were not being registered in polylang for translation. * Fixed: feeds synchronization, changeover days and date ranges did not block out dates between range. * Fixed: removed payment_url token from payment required email template, it was a dummy token added by mistake. * Fixed: creating an appointment of type package in the back-end showed nav button and book now button and payment options. * Fixed: cost summary showing wrong totals when validating coupon code. = 3.4 = * Posted April 26, 2018 * Fixed: when multi timeslot selection is enabled, and a single timeslot remains, it is treated as if empty. * Fixed: regression bug, broke auto updates. If you installed 3.3 then please install 3.4 manually by downloading it again from codecanyon to fix, sorry :( = 3.3 = * Posted April 26, 2018 * Improved: speed optimization for the custom css handler, 80% faster * Fixed: regression bug. polylang and wpml translations didn't translate custom form fields and booking summary. * Fixed: custom form fields missing from booking summary in checkout step. = 3.2 = * Posted April 17, 2018 * Fixed: typo causing failure on environments with strict error_reporting = 3.1 = * Posted April 16, 2018 * Fixed: coupon validation failed when using a coupon with a minimum order amount restriction. * Fixed: regular coupon did not expire after single use. * Fixed: coupon discount wasn't displayed when viewing booked appointments in the backend. * Added: now you can set a custom invoice prefix from the settings page. = 3.0 = * Posted April 14, 2018 * Fixed: Regression bug. When trying to edit an appointment from the appointments page, nothing happened. * Added: Availability name can now be inserted in frontend summary and email notifications using the {{availability_name}} token. = 2.9 = * Posted April 12, 2018 * Fixed: when login or registration is required, plugin choked and wouldnt go past the details step. * Fixed: when logging in instead of registering, plugin choked and wouldnt go past the details step. = 2.8 = * Posted April 11, 2018 * Fixed: woocommerce was still failing on some systems, reworked code to cope. = 2.7 = * Posted April 11, 2018 * Fixed: Regression bug (confirming, cancelling and deleting appointment in backend wasn't working). * Fixed: Regression bug (woocommerce enabled booking didn't get past the details step, when making a booking). = 2.6 = * Posted April 10, 2018 * Improved: General overall speed and faster ajax execution times, more than 80% faster now. * Added: Export to CSV. * Added: Appointment cancel policy and improved the cancellation page. * Added: Custom form fields are now included in booking summary and back-end appointments view. Reset the style and save it again to make use of this change. * Fixed: Typo in booking reminder email. * Fixed: When cloning a service, the optionals didn't get cloned. * Fixed: Changeover days didn't show correct cost when booking was viewed from the backend appointment page. * Fixed: Changeover days cost was incorrect when using optionals with multiply value per day selected. = 2.5 = * Posted March 28, 2018 * Fixed: Optional extras were not included in discounts and deposits. * Fixed: When the only payment operator was paypal, we still displayed address fields for credit card fraud protection (Paypal does not require this). * Fixed: Regression bug involving timeslots did not allow unlimited bookings if seats weren't set. * Fixed: Regression bug involving timeslot paddings did not pad at all. * Fixed: Selecting a single payment operator with online & offline mode resulted with not being able to select an operator in the front-end. = 2.4 = * Posted March 25, 2018 * Fixed: Regression bug in multi days with changeover mode. Booked dates remained available for booking. * Fixed: Timezone off by 1 hour when setting timezone in availability. * Fixed: Currency symbols showed html code in emails instead of symbol. * Fixed: Optional extras were missing line breaks in emails. * Added: You can delete synced bookings in the appointments page and new filter to toggle synced bookings. * Improved: Cancelled and synced bookings now are denoted in red and gray respectively in the appointments page. * Improved: Appointments are now clearer to see in the back-end and include a read only view in addition to previous edit mode. * Improved: Sales page now shows the appointment details. * Improved: Steps navbar responsiveness. = 2.3 = * Posted March 17, 2018 * Nail biting moment. Here comes another update... * Added: New cost setting in places. Now you can set a fixed cost that will be calculated per km/mile. * Fixed: Date and time format in general settings are now respected in email notifications. * Fixed: Dropdown list options created using the custom form builder are now translatable. * Fixed: When a time slot is booked, a seat was deducted from all days of that particular week. * Fixed: Removed booked seats field from the time slots page. These didn't make sense after the above fix. * Fixed: Group booking didn't show the seats selection when moving backwards in the wizard. * Improved: General padding and margins between fields when using custom form fields and optionals. * Improved: Removed bootstrap javascript includes. Less conflicts, lighter pages. Win win. = 2.2 = * Posted March 12, 2018 * You've got to calm down to get more done. Think zen... * Added: Support for Polylang. * Added: An availability with return but where no explicit return cost is set, will have the base cost doubled. * Added: Optional extras have new option to allow doubling the cost if return date is selected. * Added: Now maps also include distance duration. * Added: Optional extra cost now supports negative values. * Added: Terms and conditions field to the custom form fields builder. * Added: Italian and German translation. * Improved: Optionals in booking summary now includes the cost. Reset "services - style" page for this change. * Improved: Wizard breadcrumbs are now responsive. Only step numbers show on smaller screens. * Improved: Steps now have a circled number indicator and removed the background strip surrounding the steps. * Improved: Removed default selection from optional extra dropdown list. This was redundant. * Improved: Removed auto scroll which was activated when navigating steps. * Improved: Appointments displayed in calendar now use customer name in heading instead of availability name. * Fixed: Translated text now strips slashes correctly. * Fixed: Email notifications did not include distance unit. * Fixed: Custom form field of type textarea now takes up it's own row and aligns with the rest of the form. * Fixed: shortcode content always appeared above any other content in the page. = 2.0, 2.1 = * Posted March 3, 2018 * It's to make it easy to master the art of booking with Calendarista... * Regression bug fix, selecting a day did not produce timeslots (2.1). * Improved: Now selecting an availability or package will load all properties of the selected package or availability(2.0). * Fixed: Creating manual individual day based timeslots did not work(2.0). * Fixed: In enviornments with PHP E_ALL & ~E_STRICT & ~E_NOTICE enabled, you'd get warnings and notices(2.0). * Improved: Staff member page and coupons page. Tweaked the ajax and spinners to show proper progress indication(2.0). = 1.9 = * Posted February 28, 2018 * Just push your boundaries and #DontCrackUnderPressure. * Fixed: Editing a booking of certain booking mode types in the appointments page failed. * Fixed: When editing appointments changing steps caused the window to scroll up, quite annoying. * Fixed: Unavailable days in booking calendar was too faded and day numbers weren't too visible. * Fixed: Couldn't set a price when creating a regular woocommerce product. * Fixed: Time based bookings in the appointments page showed a unix format instead of readable date format. * Fixed: General settings checkboxes were always defaulting to false. * Improved: now dates retrieved in wordpress localized format. * Improved: woocommerce product now shows optional extras. * Improved: woocommerce booking label shown on the product now has no underscore and applied proper casing. * Added: single day and time mode now has a minimum timeslot fixed price charge. = 1.8 = * Posted February 25, 2018 * We're allowed to fail a bit...it's only through failure that you get success. * Fixed: Payment operators did not work in Firefox. * Fixed: The total amount was truncated at the thousand separator for values over a 1,000. * Fixed: Optional extras did not save the multiply settings and always defaulted to none (back-end). * Fixed: Map option in services and places page did not save the map settings and initial location (back-end). * Fixed: Map in front-end was missing margins to keep it aligned with the rest of the form. * Fixed: Updating a general setting caused the assets settings to reset. * Enhanced: Slight improvements to the sales page and editing bookings (back-end). * Enhanced: Improved the places page. Now associating a map to a service is much more intuitive (back-end). = 1.7 = * Posted February 20, 2018 * That's how we start the week around here, push and push until we're fairly tired... * Added: An end time to auto generate timeslots. * Enhanced: CreatingDeleting/Duplicating projects is cleaner. * Fixed: Timeslot range selector in front-end now works correctly. previously it didn't allow selecting the last slot. * Fixed: Timeslot range selector treated a time range as two separate slots, resulting in cost miscalculating. * Fixed: Entering a feeds url in the "settings - feeds" page, caused url validation to fail. * Fixed: Not setting cost on availability but instead depending on cost in optional extras didn't trigger payment operators during checkout. * Fixed: Got a 500 error after installing Calendarista? Your PHP is old, update it. Still made the effort to replace code that wasn't php 5.3 compatible = 1.6 = * Posted February 17, 2018 * Need more sleep... * Added: support for Elementor. You can now preview the plugin inside the elementor editor using their shortcode-widget. * Added: seats and group booking to Single day and time range, round trip, while seats support only added to round trip with time. * Fixed: create time slots dialog in "services - timeslots" page had a regression bug. * Fixed: removed a debug statement showing after checkout, a regression bug during. * Fixed: round trips are not date ranges but were treated as such in the appointment calendar (backend). = 1.5 = * Posted February 16, 2018 * The stuff of nightmares... * Fixed: when group booking (multiple seats), these were getting registered as single seats. * Fixed: previous update 1.3 introduced a regression bug and broke appointment editing. = 1.4, 1.3 = * Posted February 16, 2018 * Light, delicious, bug free. Now with 0% added BS... * Fixed: Payment operators weren't popping up during checkout. This is a regression bug (introduced while implementing woocommerce). * Things are heating up, watch out... * Added: validation against cheaters who hit browser refresh after making a booking. BAM! Gotcha! * Fixed: corrected half days mode calendar and some peculiarity with calendar legend. * Fixed: corrected multi date range calendar and apparently dates were disabled even though booking was unlimited. * Fixed: rightclick context menu on Google maps was broken, Google changed a few things, we adapted. * Changed: calendar loads available days through ajax requests in a more concise way now. * Changed: improved the calendar general aesthetics slightly with rounded corners and a more fitting size. * Changed: when only a single seat is left, we don't publicize this any longer. Customer just sees a time slot or day is available for booking. = 1.2 = * Posted February 14, 2018 * Fall back in love with booking... * Added: Small improvements to how we push updates. You can now reset your license. * Fixed: Unexpected behavior when using round trip modes which was expecting a full date range of available days. * Fixed: Corrected timeslots ordering lost because it depended on user db collation. Now performing explicit ordering. * Fixed: Several issues relating to single day and time range mode. Now it works correctly. * Fixed: Corrected appointments in the backend calendar view that spanned an extra day. * Fixed: Corrected seats functionality when using time slots to deduct a seat. Previously nothing happened, a regression bug of sorts. * Changed: when a booking is made, we now show invoice details along with a fresh booking form ready for another booking. = 1.1 = * Posted February 12, 2018 * The only way to be the best is to keep working like you got nothing... * Added: WooCommerce support. * Fixed: preserved services sort order in the services page (plugin backend) during an edit. * Fixed: generating timeslots by weekday works correctly now. previously timeslots were doubled. * Updated: The plugins icon logo in dashboard menu. Uses a font now and blends in with the rest of the WordPress icons. * Updated: documentation to cover WooCommerce setup.