*** WooCommerce Appointments Changelog *** 2024.12.03 - version 4.21.8 * Improvement - Updated Product Add-ons to 7.2.1. * Improvement - Compatibility with WooCommerce 9.5. * Fix - Product Add-ons quantity field not updating price. 2024.12.02 - version 4.21.7 * Improvement - Move core plugin functions to load earlier. * Improvement - Add-ons plugin activation loading for both admin/frontend. * Improvement - Updated moment-timezone-with-data.js lib to v0.5.45. * Improvement - Updated moment-with-locales.js lib to v2.30.1. * Fix - PHP 7.4 error correction. Though PHP 8.2+ is required. * Fix - REST API: usort fix for PHP 8.0+. 2024.11.29 - version 4.21.6 * Fix - Final correction in 4.21.+ saga. 2024.11.28 - version 4.21.5 * Improvement - Load integrations early after plugins are loaded. * Improvement - Remove Select2 scripts and styles and only use Select2 from WooCommerce. * Fix - Google calendar sync PHP error. 2024.11.27 - version 4.21.4 * Improvement - Filter ‘get_appointment_products_args’ includes all args. * Improvement - Move $qrey_vars in get_appointments_for_user function. * Fix - Appointable product edit screen broken. 2024.11.26 - version 4.21.3 * Improvement - Updated Product Add-ons to 7.2.0. * Improvement - Updated Slovenian translation. * Fix - Google calendar sync not working. * Fix - Exporting appointments not working. * Fix - Email notifications not working. * Fix - Appointments permalink in my-account not working. * Fix - Requiring confirmations not working. 2024.11.22 - version 4.21.2 * Improvement - Remove 2 metadata fields in synced gCal. * Fix - Appointments shortcodes not working. 2024.11.20 - version 4.21.1 * Improvement - Remove deprecated WooCommerce Admin plugin menus. * Improvement - Updated Product Add-ons to 7.1.2. * Improvement - Compatibility with WordPress 6.7. * Improvement - Compatibility with WooCommerce 9.4. * Improvement - Added additional 'notranslate' class to prevent plugin from transating fields. * Improvement - Filter ‘get_appointment_products_args’ should include ‘author’. * Fix - Translations not working (for non English sites). 2024.10.07 - version 4.21.0 * Improvement - Clear cache only when post object is defined for the appointments. * Improvement - Improved compatibility with Polylang for WooCommerce. * Improvement - Fixed strings to Hebrew translation. * Improvement - Updated Product Add-ons to 7.1.0. * Improvement - Updated all translations and adjusted add-ons strings. * Improvement - Compatibility with WooCommerce 9.3. * Improvement - Use pretty uniform pretty time duration display. * Improvement - SMS "Customer Confirmation message" missing info. * Improvement - Removed option to edit order inside appointment edit screen in admin. * Improvement - Added filter to allow not updating gCal description on appointment update. * Improvement - Updated php rrule to 2.5.1. * Fix - PHP 8.2 error when empty array present. * Fix - Recurring events in gCal not blocking out times. * Fix - gCal recurring event blocking out the wrong time. 2024.06.29 - version 4.20.0 * Feature - Added WC Payments multicurrency support. * Feature - Added Appointable product to Analytics for filtering. * Improvement - Better integration with WooCommerce Payments gateway. * Improvement - Add-ons integration added earlier, better compatibility with external plugins. * Improvement - Updated Product Add-ons to 6.8.4. * Improvement - Handling failed orders with appointments added back with additional validations. * Improvement - Bump "WC requires at least" to version 8.7. * Improvement - Compatibility with WooCommerce 9.0. * Fix - Add-ons work with WC Payments for appointable products. * Fix - Updating manually added Appointment in Order can create critical error. * Fix - Timezone visible in admin for non-timezone appointments. 2024.05.22 - version 4.19.1 * Feature - Integration with Official WooCommerce Stripe Gateway. * Improvement - List WooCommerce plugin as a requirement for Appointments to work properly. * Improvement - Updated Product Add-ons to 6.8.3. * Improvement - Compatibility with WordPress 6.5. * Improvement - Compatibility with WooCommerce 8.9. * Fix - Uncaught Error: Class ‘WC_PAO_Admin_Notices’ not found. * Fix - Report dashboard count translation error. 2024.03.26 - version 4.19.0 * Feature - Add a DATE add-on custom field. * Feature - Appointments saved with a site's timezone and customer's set timezone (optional). * Feature - Integration with AutomateWoo extension. * Improvement - Updated all translations. * Improvement - Updated and added strings to Hebrew translation. * Improvement - Updated Product Add-ons to 6.8.0. * Improvement - Revert Appointment status to "in-cart" when order fails to enable re-payment. * Improvement - Compatibility with WooCommerce 8.7. * Fix - Importing addons globally does not work. * Fix - Missing View cart button on individually sold appointments. * Fix - Clear cache when appointment is trashed/untrashed. * Fix - Can't reorder addons. 2024.02.22 - version 4.18.2 * Improvement - Simplified each order item ID call to speed the query. * Fix - Blocks for appointments not loading, remove version checking as core supports it. * Fix - Exporting admin created appointments with tax is wrong. 2024.02.16 - version 4.18.1 * Improvement - Updated Product Add-ons to 6.6.0. * Improvement - PHP 8.3 compatibility. * Improvement - Updated all translations. * Improvement - Compatibility with WooCommerce Deposits 2.2.5. * Improvement - Compatibility with WooCommerce 8.6. * Improvement - DB length of the calendar event ID in availability rules set from 100 to 255. * Improvement - Improved loading times for the time slots. * Fix - Product Add-ons import not working. * Fix - Manual appointment with customer not working. * Fix - WooCommerce Deposits stutus set as paid for non-deposit appointments. * Fix - Adding appointments in admin with WooCommerce 8.6+. 2023.11.10 - version 4.18.0 * Improvement - Compatibility with WordPress 6.4. * Improvement - Include quantity field as hidden even when customer cannot choose the qty. * Improvement - Removed excessive caching that could cause query issues. * Improvement - gCal additonal staff ID checks when syncing. * Improvement - Updated all translations. * Fix - Free products status stays in-cart instead of paid. * Fix - Big issue when booking multiple appointments in one order with 100% discount. * Fix - Addons add a + sign even if the value is negative - fix it. * Fix - Skip staff ID's on sync attempt when empty. * Fix - Cannot assign appointments to existing orders with COT enabled. * Fix - WooCommerce TM Extra Product Options not working, when product quantity is missing. 2023.11.07 - version 4.17.4 * Improvement - Compatibility check with WooCommerce TM Extra Product Options 6.3.2. * Improvement - Compatibility with WooCommerce 8.2. * Improvement - Updated Product Add-ons to 6.5.0. * Improvement - Better integration with Product Add-ons blocks. * Improvement - Updated all translations. Added lots on new strings. * Fix - Additional checks to make sure only appointments are rendered in templates. 2023.8.22 - version 4.17.3 * Improvement - Compatibility with WordPress 6.3. * Fix - Some addons missing closing DIV element - breaks layout of the site. * Fix - gCal for staff not working. 2023.8.17 - version 4.17.2 * Improvement - PHP 8.2.8 compatibility. * Improvement - Updated Product Add-ons to 6.4.5. * Improvement - Radio Addons add a "none" feature people don't want. * Improvement - Updated php rrule to 2.4.1. * Improvement - Compatibility with WooCommerce 8.0. * Fix - Addons checkbox missing closing DIV element - breaks layout of the site. 2023.7.11 - version 4.17.1 * Improvement - Hidden input forms don't need a label. * Improvement - Prevent quantity editing for appointable products. * Fix - Adding appointment in admin to existing order not working. * Fix - Adding appointment in admin redirect is wrong. 2023.7.08 - version 4.17.0 * Improvement - Unnecessary call to constructor of extended WC_Appointment_CSV_Exporter class. * Improvement - Do not cancel appointments with failed payments, unpaid status is sufficient. * Improvement - Added filter 'woocommerce_appointments_gcal_remove_from_gcal'. * Improvement - Updated php rrule to 2.3.2. * Improvement - Updated rrule.js to v2.7.1. * Improvement - Updated Product Add-ons to 6.4.3. * Improvement - Compatible with PHP 8.1.9. * Improvement - Removed Action Scheduler library since it is included with WooCommerce since 3.0. * Improvement - Compatibility with WordPress 6.2. * Improvement - Compatibility with WooCommerce 7.8. * Improvement - Updated all translations. Added lots on new strings. * Improvement - Updated Moment.js timezone lib to v0.5.43. * Fix - Customer cancelled appointment does not cancel the TAX. * Fix - Cart block product quantity editing disabled. * Fix - Bug with untrash_post. * Fix - unneccessary pao_ids in gCal event after. * Fix - FUE (Follow Ups) integration update. * Fix - Fix Hebrew translation. * Fix - Restore trashed Appointment triggers FATAL ERROR. 2022.11.28 - version 4.16.1 * Fix - Do not cancel unpaid orders. 2022.11.28 - version 4.16.0 * Feature - Support for High-performance Order Storage ("HPOS"), also known as Custom Order Tables, "COT". * Feature - Structure to support WooCommerce blocks. * Feature - Ability to checkout appointments that require confirmation with the new WooCommerce blocks. * Improvement - Simplified appointment page for customer accounts. * Improvement - Pricing override slot rule redundant. * Improvement - Updated Product Add-ons to 5.0.2. * Improvement - Set minimum PHP version to 7.0. * Improvement - Set minimum WordPress version to 5.6. * Improvement - Set minimum WooCommerce version to 6.0. * Improvement - Compatibility with WooCommerce 7.1. * Improvement - Remove redundant cost calculation for overrides. * Improvement - Hide appointments payment gateway in the admin as it has no configuration. * Improvement - Mark the confirmed appointments order as complete if the total is zero. * Improvement - Removed legacy code for appointable product setup. * Improvement - Option to register scripts as the type of 'module'. * Improvement - Renamed gateway name/ID from 'wc-appointment-gateway' to 'wcappointmentsgateway'. * Improvement - Updated all translations. * Fix - Avoid PHP warnings when adding appointment manually. * Fix - Delete transient of appointment removed from cart to free up the product slots. * Fix - Do not change a failed order to "pending" when the appointment goes to "unpaid". * Fix - Appointments list API results count inconsistent. * Fix - Show category in API only if it has a appointable product. * Fix - REST API returns days that are not appointable. * Fix - Hide products from the `/slot` endpoint if their catalog visibility is set to `hidden`. 2022.10.21 - version 4.15.0 * Improvement - Beginning the switch to ES6 in JS files. * Improvement - Remaining chars in add-on fields duplicated. * Improvement - Compatibility with WooCommerce 7.0. * Improvement - Compatibility with WordPress 6.0. * Improvement - Updated Product Add-ons to 5.0.0. * Improvement - Filtered statuses for the Follow up emails. * Fix - Inventory not taken into account when rescheduling in frontend - overbookings possible. * Fix - The tax string on single product page is displayed twice for Appointable products. 2022.05.03 - version 4.14.8 * Improvement - Updated Product Add-ons to 4.9.0. * Improvement - Compatibility with WooCommerce 6.4. * Improvement - Updated all translations. * Fix - was-in-cart status not removed and can build up in the backlog. * Fix - German, Dutch and French translation issues. * Fix - WPML availability rule quantity not copied. 2022.01.27 - version 4.14.7 * Fix - Product Add-ons Subtotal never shown in 4.14.5. 2022.01.27 - version 4.14.6 * Improvement - Replaced all dashicons for the calendar with HTML character. * Improvement - Appointment number can now also accept strings from external plugins. * Fix - Product Add-ons Subtotal never shown in 4.14.5. * Fix - TM Product Extra Product Options plugin and Add-ons positioning issue in cart. 2022.01.26 - version 4.14.5 * Improvement - Compatibility with WordPress 5.9. * Improvement - Updated compatibility with Polylang for WooCommerce 1.6.2. * Improvement - Updated Product Add-ons to 4.5.0. * Fix - Polylang staff costs and quantity erased on translated products. * Fix - Datepicker in admin shows html instead of icon from WP 5.9. * Fix - WC product Addons translation not working. 2022.01.02 - version 4.14.4 * Improvement - Added 'woocommerce_appointments_product_defaults' to filter product defaults. * Improvement - Added better compatibility with the Square payment plugin. * Improvement - Compatibility with WooCommerce 6.1. * Improvement - Updated Product Add-ons to 4.4.0. * Fix - Pagination at My Appointments account section. 2021.10.08 - version 4.14.3 * Improvement - Replaced more array() instances with shorthand [] instance. * Improvement - Updated Spanish translations. * Improvement - Added new translated strings to all languages. * Improvement - WooCommerce Payments multicurrency support for add-on fields. * Fix - Some strings in "appointment-summary-list.php" are not translatable since 4.14.1. * Fix - Admin calendar should include the tax amount for listed appointments. * Fix - All new products (even simple) have the 'Virtual' option checked. * Fix - Saved customer ID for the appointment not shown. * Fix - Multi-day duration does not highlight selected days on disabled dates. * Fix - Pagination at My Appointments account section. 2021.10.02 - version 4.14.2 * Improvement - Updated Product Add-ons to 4.2.0. * Improvement - Products sold individually now work the same as default WC functionality. * Improvement - Updated all translations. * Improvement - WooCommerce Payments integration support. * Fix - Heading for confirmation emails might be empty with external plugins. * Fix - WPML multicurrency does not work ok for appointments created in admin. * Fix - Reminder emails not always sent, when they should be. * Fix - Wrong time zone auto selected due to caching. 2021.09.26 - version 4.14.1 * Fix - md5() has array instead of string. * Fix - When more slots are scheduled than available, the slot should not be visible. 2021.09.17 - version 4.14.0 * Feature - Send email to admin/staff when customer reschedules the appointment. * Feature - Add the 'sold individually' option for appointable products. * Improvement - Compatibility with WooCommerce 5.7. * Improvement - Simplified echos to esc_html_e and esc_url_e. * Improvement - Updated all translations. * Improvement - Added 'woocommerce_appointments_cancel_appointment_redirect' & 'woocommerce_appointments_reschedule_appointment_redirect' to filter the redirects. * Fix - Properly escaped appointment name and status. * Fix - Wrong Appointment Duration on Reschedule. * Fix - Added robust appointment validation in admin as well. * Fix - REST API visible to everyone with a link - should not be. * Fix - http_build_query() PHP8 warning. 2021.07.06 - version 4.13.1 * Improvement - Send customer email notification when unpaid appointments are canceled. * Improvement - Updated Product Add-ons to 4.1.0. * Improvement - Percentage based fee for add-ons for NON Appointable products. * Improvement - Better sanitization for the appointment ID display. * Improvement - Removed "WooCommerce Create Customer on Order" integration. * Improvement - Updated all translations. * Fix - Reschedule button does not work outside My account pages. 2021.06.15 - version 4.13.0 * Feature - Phone orders: add customer (billing) data, when adding appointments in admin. * Improvement - Compatibility with WooCommerce 5.4. * Improvement - Compatibility with WordPress 5.8. * Improvement - Updated all translations. * Improvement - Option to skip cache for the "get_appointment_ids_from_order_item_id" method. * Improvement - Updated Product Add-ons to 4.0.0. * Fix - Add-ons console error when required fields are selected. * Fix - Availability filter widget not counting for the start day. * Fix - Missing closing
on the appointment edit screen. * Fix - Select add-ons do not show selected options on page reload. * Fix - When using radio select add-ons, the providers selection is reset on page reload. * Fix - Cart adding appointments twice. * Fix - Staff all together not working ok. * Fix - Selecting staff can result in rendering HTML instead of staff images. 2021.04.16 - version 4.12.0 * Improvement - Compatibility with WooCommerce 5.2. * Improvement - Updated Product Add-ons to 3.7.0. * Improvement - Updated all translations. * Improvement - Only add appointment status in 'view-order' endpoint, order already has this. * Improvement - REST-API filter appointments by customer_id. * Improvement - Availability widget filter should include the end date. * Improvement - Added 'wc_appointments_before_find_scheduled_day_slots' for filtering posted data. * Fix - Default date not working correctly. * Fix - Auto updater not working. * Fix - Staff selection now only loads slots for the selected staff. * Fix - Cancel and Reschedule buttons now have nowrap style to prevent letter breaking. 2021.03.22 - version 4.11.9 * Improvement - Add filter 'woocommerce_appointments_gcal_sync_twoway_enabled' for two way sync. * Improvement - Add filter 'woocommerce_appointments_sync_from_gcal_event_start' for event sync. * Improvement - Removed Select2 override classes for the admin fields. * Improvement - WooCommerce Follow Up Emails appointment statuses trigger error. 2021.03.20 - version 4.11.8 * Improvement - Attach user to appointment status changes. * Improvement - Additional check for $product object (better compatibility with other plugins). * Improvement - Re-tested compatibility with WooCommerce Follow Up Emails 4.9.13. * Fix - Availability filter not formatted correctly as yyyy-mm-dd. * Fix - User not queried correctly after the product import. * Fix - Appointment customer not showing correctly. * Fix - Exporting/importing add-ons not importing duration. * Fix - Added was-in-cart appointment status to the list of all statuses. 2021.03.14 - version 4.11.7 * Improvement - Removed code for very old WooCommerce versions not supported any more. * Fix - Payments can remain unpaid when payment gateways complete orders early. 2021.03.12 - version 4.11.6 * Improvement - Prioritize WC_Customer data over pulling customer info from orders. * Improvement - Updated French translation. * Improvement - Cached WC_Order and WC_Customer queries for the appointment object. * Improvement - Better code standards (phase 1). * Improvement - Updated Product Add-ons to 3.5.0. * Fix - Flush cache for products with single staff. * Fix - Don't cancel already cancelled appointment during sync. * Fix - Recurring events can sync with 1 hour difference (DST issue). 2021.03.01 - version 4.11.5 * Improvement - Add 'woocommerce_appointments_gcal_sync_order_meta' filter for order meta sync. * Fix - Make compatibility check for navigation work correctly in older WC versions. * Fix - Updating appointment changes from the synced gcal event can break time. * Fix - Sync appointment changes to the calendar event's description. 2021.02.27 - version 4.11.4 * Improvement - Register menu items with WC Admin Navigation feature (deactivated by default). * Improvement - Integration with WooCommerce PDF Invoices & Packing Slips plugin. * Improvement - Compatibility with WooCommerce 5.1. Beta tested. * Improvement - Compatibility with WordPress 5.7. Beta tested. * Improvement - Updated Product Add-ons to 3.4.0. * Improvement - Do not include addons.js when no addons are set for the product. * Fix - Bug with gCal sync, typo. * Fix - Pretty timestamp not calculated correctly for long duration in months/days. * Fix - Google Calendar not updating when appointment is rescheduled. 2021.02.13 - version 4.11.3 * Improvement - Compatibility with WooCommerce 5.0. * Improvement - Compatibility with WooCommerce Multilingual 4.11.2. * Improvement - Updated Product Add-ons to 3.3.1. * Improvement - Added 'woocommerce_appointment_status_changed' hook, when status transition changed. * Improvement - Replaced empty array() instances with shorthand [] instance. * Improvement - When billing data is empty, try getting it from shipping data. * Improvement - Removed duplicate appointment ID queries in admin. * Fix - PHP 8 notices for required parameters after optional ones. * Fix - PHP 8 notices with WPML activated. * Fix - Syncing staff and global sync for the same appointment. 2021.01.24 - version 4.11.2 * Improvement - Faster shop page rendering by caching global addon query. * Improvement - Always add search for staff selection. * Improvement - Filter 'woocommerce_product_is_in_stock' reinstated. * Improvement - Updated php rrule to 2.2.2. * Fix - PHP 8 issue with get_price_html() method. * Fix - Fixed filter 'woocommerce_email_confirmed_recipients'. * Fix - Fixed filter 'woocommerce_email_reminder_recipients'. * Fix - Fixed filter 'woocommerce_email_follow_up_recipients'. * Fix - Uploading files as add-on fields not working, when appointment added in admin. 2021.01.10 - version 4.11.1 * Improvement - Added 'woocommerce_appointments_get_addons' filter. * Fix - PHP 8 issue with single '&' operator for comparison. 2020.12.29 - version 4.11.0 * Improvement - Add filter 'woocommerce_appointments_before_rescheduled_appointment'. * Improvement - Also export custom appointment statuses. * Improvement - Also export customer status. * Improvement - Include product ID instead of object inside appointment form template. * Fix - Rescheduling duration not always taken into account. * Fix - Make sure quantity added to cart is never zero. 2020.12.23 - version 4.10.9 * Improvement - Added full Slovenian translation. * Improvement - Compatibility with WooCommerce 4.9. * Improvement - Integration with WooCommerce Multi Currency plugin. 2020.12.18 - version 4.10.8 * Improvement - Add filter 'wc_appointments_find_scheduled_day_slots' for filtering ajax call for slots. * Improvement - Escape JS text strings. * Improvement - Confirmation dialog for “cancel appointment” (customer side). * Improvement - Updated all translations. * Improvement - Admin calendar now lists customer name before the appointment time. * Improvement - Updated Product Add-ons to 3.3.0. * Improvement - Updated Select2 library to 4.0.13. * Improvement - Compatibility with WooCommerce 4.8. * Improvement - Added partial Slovenian translation. * Fix - Translate calendars in admin through $wp_locale. * Fix - Add missing placeholders to appointment emails. * Fix - Only send out a reminder and follow up emails if the appointment is active. * Fix - Availability widget not working for same day from/to dates. * Fix - Availability widget showing unavailable products after the first available product. 2020.11.12 - version 4.10.7 * Improvement - Enqueue "Select2" script above "selectWoo" in admin due to html rendering issues. * Improvement - Make sure get_current_screen() function exists to avoid errors. * Improvement - Do not auto-select same time slot on time zone change. * Fix - Check if availability object exists before attempting to delete it. * Fix - Undefined variable: pre_wc_30 for confirmation email template. * Fix - Overriding rrules from Google calendar not working. * Fix - Flushing cache for products when staff profile is updated or deleted. * Fix - Flushing cache for products when appointment is updated or deleted. 2020.11.03 - version 4.10.6 * Improvement - Updated all translations. * Improvement - Refactored meta-boxes file structure. * Improvement - Cleaned customer meta-box html. * Fix - Week numbers for the availability not correct for following years. * Fix - Follow up variables not working. * Fix - Show current appointments in My-account instead of Today's. 2020.11.01 - version 4.10.5 * Improvement - Added filters to include sold out time slots. * Improvement - Removed deprecated "jQuery( document ).ready" method to prevent late script execution. * Improvement - Remove useless "slug" meta box for appointments edit screen. * Improvement - Updated moment-timezone.js lib to v0.5.31. * Improvement - Updated moment-with-locales.js lib to v2.29.1. * Fix - Padding duration filter name duplicated. * Fix - Showing slots that are unavailable due to padding. * Fix - Overbooking - padding not taken into account. * Fix - Slots left not working ok with padding. 2020.10.28 - version 4.10.4 * Improvement - Compatibility with WooCommerce 4.7. * Improvement - Integration with WooCommerce Deposits - Partial Payments Plugin v3.0. * Improvement - Add filter for Follow up emails variables: 'fue_appointments_variable_replacements'. * Improvement - Add customer details to admin/staff email types. * Improvement - Add order details to cancellation email sent to admin/staff. * Improvement - Update rrule.js to v2.6.6. * Fix - Exporting only 50 appointments and excluding cancelled appointments. * Fix - Available slots visible from previously selected staff (if new staff has no availability). 2020.10.23 - version 4.10.3 * Improvement - Add end date/time to Admin Calendar View. * Improvement - Added action attribute to appointment form for better compatibility with external plugins. * Fix - Reduce appointment quantity for partial refunds. * Fix - Reminder email is sent even if there is not enough time. 2020.10.21 - version 4.10.2 * Improvement - Compatibility with WordPress 5.6. * Improvement - Ensure cache expires. * Improvement - Replace WC date and time formats with function to avoid empty strings. * Improvement - Searching for appointments in admin not working ok without orders. * Improvement - Hiding addon price and/or duration label across board (emails, orders,...). * Improvement - Updated all translations. * Fix - Pagination for appointments in My account not working correctly. * Fix - Remove deprecated jQuery methods. * Fix - When retrieving ICS file, Use `get_site_url` instead of `home_url` for multisite installs. 2020.10.20 - version 4.10.1 * Improvement - Harden the compatibility with product add-ons extension. * Improvement - Cleaned the onboarding screen from unnecessary extensions. * Fix - When creating new account, add customer from created order. * Fix - Follow Ups not working ok with v4.10.0. 2020.10.09 - version 4.10.0 * Improvement - Compatibility with WooCommerce 4.6. * Improvement - Possibility to change all arguments for appointment export functionality. * Improvement - Add-ons trigger admin-ajax on every char typed - only trigger on cost/duration change. * Improvement - Hide appointment status on thank you page, since it is not relevant there. * Improvement - Send a note to customer, when they have rescheduled their appointment. * Improvement - Option to send a note to customer, when appointment is manually updated by admin or staff. * Improvement - Added $appointment object to filters: + woocommerce_appointments_remind_before_time + woocommerce_appointments_complete_time + woocommerce_appointments_follow_up_time * Improvement - Datepicker in the availability widget needs to use local WP date format. * Improvement - Updated Product Add-ons to 3.1.0. * Improvement - Updated all translations. * Improvement - Compatibility with WooCommerce Box Office extension. * Improvement - Added hooks before and after quantity field for better compatibility with external plugins. * Fix - Free appointments that require confirmation should not ask the client for payment. * Fix - Current appointments not showing in customer account. * Fix - Fix SQL query filtering for availabilities. * Fix - Restricting days option missing Sat and Sun due to CSS bug. * Fix - Duration not taken into account with NOT available rules. * Fix - Availability widget not checking all dates in range. * Fix - Automatically assigned (all staff together) not working ok. * Fix - Product with staff members (one unavailable) and inventory more than 1 not working fine. * Fix - Fatal error in 4.9.9 regarding Follow Ups integration. * Fix - When quantity is more than the max - it shows wrong 'slots left' message. * Fix - Linted PHP files to prepare everything for PHP 8. * Fix - Slots visible from previously selected staff (if other staff has no availability). 2020.08.19 - version 4.9.10 * Improvement - Google Calendar oAuth access set to offline to work when user is absent. * Improvement - Compatibility with WooCommerce 4.4. * Improvement - Lowered transient deletion to 500 at a time. Avoid timeout. * Improvement - 'woocommerce_appointment_export_data_args' to allow changing export data arguments. * Improvement - WordPress 5.5 metabox arrows removed from appointment info edit screen. * Improvement - Brought back stupid Marketing menu item, since WooCommerce moved coupons there. * Fix - WordPress 5.5 REST API compatibility changes. * Fix - Check for appointment object before looking further. * Fix - date_i18n bug. * Fix - Product Availability rule with lowest Quantity overrides all other quantities. * Fix - Rescheduling does not apply changes to synced gCal event. * Fix - Availability widget showing products that have no availability. 2020.07.27 - version 4.9.9 * Improvement - Compatibility with WordPress 5.5. * Improvement - Additional checks for email templates to make sure appointment object is present. * Improvement - Updated Product Add-ons to 3.0.36. * Fix - 'woocommerce_cart_emptied' can cause overbookings. * Fix - Appointments Export does not export add-ons. * Fix - Adjust for timezone when requesting available slots from the API. 2020.07.07 - version 4.9.8 * Feature - Rescheduling appointments by customers (when enabled). * Improvement - Updated Product Add-ons to 3.0.34. * Improvement - Remove WooCommerce Marketing menu (again). * Improvement - Updated all translations. * Fix - Add-on images notice, when no image assigned to swatch option. * Fix - Multiple shortcodes on same page with autoselect don't work. * Fix - Using 'all staff together' shows unavailable days (without slots). * Fix - Twilio SMS integration: reminders not going out at the right time. * Fix - Input fields styling in admin misaligned. * Fix - Make sure staff selection is not crippled by selectWoo script. * Fix - Quatity add-on allows overbooking in backend. 2020.06.23 - version 4.9.7 * Feature - Export appointments to CSV. * Improvement - Added add-ons to appointment list and calendars in admin. * Improvement - Compatibility with WooCommerce 4.3. Beta tested. * Improvement - Add product pricing rules and add-on rules to standard WC import/export. * Improvement - Updated all translations. * Improvement - Minimum WooCommerce version requirement is now 3.1. * Improvement - Datepickers in admin do not require jQuery UI css any more. * Fix - Scheduling window defined in hours and over 24 hours not working ok. * Fix - Possible bug in Gmail with multiple ICS files in one email. * Fix - Admin calendar not linking to synced events. 2020.06.13 - version 4.9.6 * Improvement - Improved French translation. Big thank you to Alexandre Doyen. * Improvement - Add appointment object variable to wc_twilio_sms_appointments_token_map filter. * Fix - Overlapping appointments in admin calendar over the header section. * Fix - Fresh installation can throw error since plugin version is not saved yet. * Fix - Availability rules spanning overnight not removing time slots. * Fix - Inventory acting weird for next day when day before goes after midnight. * Fix - Availability widget showing products when none have availability. 2020.05.21 - version 4.9.5 * Improvement - Compatibility with WooCommerce Follow Up Emails 4.9.1. * Improvement - Updated Product Add-ons to 3.0.33. * Improvement - Flush memcahe, when external object caching is detected. * Fix - Customer not attached to appointment when existing customer logs in during the checkout process. * Fix - WC Follow-ups 'Last status' not working. * Fix - Problem with Admin Calendar Day View. WP defined time zone not taken into account. * Fix - Availability widget showing products when none have availability. 2020.05.09 - version 4.9.4 * Improvement - Updated Product Add-ons to 3.0.32. * Improvement - Added filter 'wc_apointments_qty_scheduled_in_slot'. * Improvement - Add 'data-remaining' to time slots. * Improvement - Added filter 'woocommerce_appointments_get_padding_duration'. * Improvement - Updated all translations. * Fix - Security risk - mask Google calendar sync fields and store data securely. * Fix - When order is reverted to Pending Payment, mark appointments as unpaid. * Fix - Translators guidance for specific strings. * Fix - Reverse back .ics file change introduced in 4.9.2. * Fix - TC Extra Product Options not working with. 2020.04.08 - version 4.9.3 * Improvement - Updated Product Add-ons to 3.0.28. * Improvement - Disabled WC Marketing menu item. * Fix - Select2 library CSS fixes in admin. * Fix - Need to add overflow CSS rule for availability rules in edit-product. * Fix - Bug with inventory allows overbooking in v4.9.2. 2020.03.30 - version 4.9.2 * Improvement - Compatibility with WooCommerce 4.0.1+. * Improvement - Updated Product Add-ons to 3.0.27. * Improvement - Added filter 'wc_apointments_check_appointment_qty'. * Improvement - Updated all translations. * Improvement - ics for client has wrong time when using timezones. * Fix - Fix issue with quotes translations on default email subjects. * Fix - Reminder email not sent on partially paid appointments with deposits. 2020.03.09 - version 4.9.1 * Fix - Use Action Scheduler 3.0+ only with WooCommerce 4.0+. 2020.03.09 - version 4.9.0 * Improvement - Compatibility with WooCommerce 4.0. * Improvement - Compatibility with WordPress 5.4. * Improvement - Updated Action Scheduler to 3.1.1. * Improvement - Highlight appointment data instead of labels in appointment summary list. * Improvement - Updated Product Add-ons to 3.0.25. * Improvement - Updated all translations. * Fix - Duplicated messages when removing inactive appointments from cart. * Fix - Fix integration with Deposits when the order is manually set to partially paid. * Fix - Missing time slot at 00:00 when overnight availability rules are set. * Fix - Overnight availability rules not working correctly. * Fix - Time zones missing time slots. * Fix - Problem with availability when automatically selecting staff. 2020.02.21 - version 4.8.20 * Improvement - Updated compatibility with Polylang for WooCommerce 1.3.2. * Improvement - Appointment providers label in emails should reflect staff label set in product edit screen. * Improvement - Sanitize all tooltips. * Improvement - Sanitize all recurring rule errors. * Improvement - Updated all translations. * Fix - On page reload with selected addon the addon price is not taken into account. * Fix - Confirmation required product gives fatal error when non-appointable product is added to cart. * Fix - Combine admin notices on appointments removed due to inactivity. 2020.02.18 - version 4.8.19 * Improvement - Updated Product Add-ons to 3.0.24. * Improvement - Order with free and paying product should set the free appointment as 'paid'. * Improvement - Added "autocomplete=off" to appointment form to prevent browser issues with add-ons. * Fix - Product import/export doesn't import everything. * Fix - Changing product of booked appointent doesn't reflect the change in order. 2020.01.31 - version 4.8.18 * Improvement - Grey out all unavailable days. * Improvement - Make Addons integration global through $GLOBALS['Appointments_Integration_Addons']. 2020.01.31 - version 4.8.17 * Improvement - Updated all translations. * Fix - Staff ID missing. * Fix - gCal rule that ends at the same time the slot should start doesn't work. 2020.01.30 - version 4.8.16 * Fix - Make sure staff quantity cannot be zero by default. * Fix - Appointments break manual subscription renewal for Woocommerce subscriptions. 2020.01.28 - version 4.8.15 * Improvement - Cache calendar data once and remove duplicate day attributes. * Fix - Availability widget not showing all products. * Fix - Follow Up email being cancelled. * Fix - On page reload with selected addon the addon price is not taken into account. 2020.01.26 - version 4.8.14 * Improvement - Updated Product Add-ons to 3.0.21. * Improvement - Prevent browser auto-complete to fill calendar date/time inputs. * Improvement - For monthly appointable products, made it more clear with a 4-digit year instead of 2-digit. * Improvement - New filter woocommerce_appointments_apply_multiple_rules_per_slot to allow rule cost calculation logic to be modified. * Fix - Follow up emails extension: does not load individual product. * Fix - Restrict start/end days CSS issue (Saturday not available). * Fix - Product calendar styling sometimes incorrect on first page load. * Fix - Repeating gCal events blocking out too much time. 2020.01.09 - version 4.8.13 * Improvement - Add $appointments to all slot filters. * Improvement - Removed unnecessary styling for appointment summary in my-account orders. * Fix - Recurring rules can break the availability, when not structured properly. * Fix - Sending time for the Follow Up email is not taken from the Email settings. 2019.12.28 - version 4.8.12 * Fix - When staff syncs to the same Google calendar as site, always sync to site's global rules. * Fix - Date range with time rule not working correctly. 2019.12.27 - version 4.8.11 * Improvement - Add add-ons in the edit-appontment for Appointments with status ‘in-cart’ or ‘was-in-cart’. * Improvement - Add the order details to the 'New Appointment admin' email. * Improvement - Filter for .ics file 'wc_appointments_ics_appointment' has been refactored. * Fix - Staff view calendar in admin is off. 2019.12.25 - version 4.8.10 * Improvement - Full error log for gcal sync errors. * Improvement - WooCommerce 3.9.0 compatibility. * Fix - Do not sync back cancelled events as cancelled appointments. * Fix - Staff can sync to same google calendar, even if it doesn't make any sense. * Fix - No preference shows no availability when staff has no rules. * Fix - No preference does not show rules correctly, when not all staff have rules. 2019.12.24 - version 4.8.9 * Improvement - Updated all translations. * Improvement - Improved German translation. * Improvement - More info in calendar header in admin, when scrolling. * Improvement - Updated compatibility with WooCommerce Multilingual 4.7.5. * Fix - WPML related error in latest version of WC and Appointments. * Fix - 'Date Range with time' not working when duration spans to next day. * Fix - Automatically Completing orders sends out the New Appointment email twice. 2019.11.25 - version 4.8.8 * Fix - No preference does not show available dates for staff. 2019.11.23 - version 4.8.7 * Fix - Revert back availability check change. 2019.11.22 - version 4.8.6 * Improvement - Updated compatibility with WooCommerce Multilingual 4.7.3. * Improvement - Required image swatches don't show error wih JS but reload the page. * Improvement - Updated Product Add-ons to 3.0.20. * Fix - Datepicker not working with Google Translate. * Fix - Addon quantity does not store minimum number 0. * Fix - Quantity add-on field does not respect min/max limits range. * Fix - Unavailable minutes should not be appointable. 2019.11.14 - version 4.8.5 * Fix - Rendering of rules not working correctly. 2019.11.14 - version 4.8.4 * Improvement - Better processing of staff rules, faster loading with lots of staff. * Fix - Requesting specific staff availability resulted in error. 2019.11.13 - version 4.8.3 * Improvement - Updated German translation. * Improvement - WordPress 5.3 styling compatibility. * Improvement - Multiple themes font size compatibility. * Improvement - Much faster loading with lots of synced events. 2019.11.07 - version 4.8.2 * Improvement - Separate availability rules from Gcal rules for better overview. * Improvement - Highlighted rows in admin that are currently being edited. * Improvement - Updated all translations. * Improvement - Required checkbox Add-ons don't show error with JS but reload the page. * Fix - Admin UI borders were not collapsed correctly on Chrome browser. * Fix - Prevent rendering scheduled day slots when provided product ID is empty string. 2019.11.04 - version 4.8.1 * Improvement - Compact appointments list template inside my-account. * Improvement - Updated RRULE to v2.2.0. * Improvement - Forced block styling for appointment form to prevent spilling with some themes. * Improvement - Appointments tables in my-account are not responsive. * Improvement - Updated Product Add-ons to 3.0.18. * Improvement - Updated all translations. * Fix - RRULE uses locale, where datetime string is defined as 'en'. 2019.10.26 - version 4.8.0 * Feature - Added follow-up email option. * Feature - Added additional content to all customer emails. * Improvement - Admin Calendar - border radius on calendar events. * Improvement - Simplified email content and headings. * Improvement - Code cleanup. * Improvement - Updated all translations. There are lots of changed strings in this release, especially for email content. * Fix - Admin Calendar - Adding Product Filter with No Appointments changes date range to 1969 :) * Fix - REST API Slots were missing staff ID and scheduled count was not working. 2019.10.21 - version 4.7.6 * Improvement - Introduced 'woocommerce_appointments_slots_availability' filter. * Improvement - Updated menu icon from 'dashicons-backup' to 'dashicons-clock'. * Improvement - Simplified menu name for adding new appointment. * Improvement - Moved customer name from separate column to ID column in appointments list in admin. * Improvement - Updated all translations. * Improvement - Updated Product Add-ons to 3.0.17. * Improvement - Do not load add-ons when post is not a product type. * Improvement - Set new default availability rule to 'No', not 'Yes'. * Fix - Admin/staff emails may be duplicated, send to unique addresses only. * Fix - When multiple appointment forms are displayed, only set time slot selected. * Fix - When multiple appointment forms are displayed, cache add-ons by product ID. 2019.10.09 - version 4.7.5 * Improvement - Compatibility with WooCommerce 3.8. * Fix - WPML Multilingual CMS 4.2.9 compatibility fixes. * Fix - WooCommerce Multilingual 4.6.7 compatibility fixes. 2019.10.04 - version 4.7.4 * Fix - Global availability rules not saving correctly with recurring rules from Google calendar. 2019.10.03 - version 4.7.3 * Fix - Memberships integration. Price set to 1, when product price is zero. 2019.10.02 - version 4.7.2 * Improvement - Added attributes to Appointments REST API controller. * Fix - Memberships integration. 2019.10.01 - version 4.7.1 * Improvement - Custom pricing rule for duration. * Fix - Staff costs not calculated. 2019.10.01 - version 4.7.0 * Improvement - Much faster loading of appointment pages in admin with thousands of products. * Improvement - Updated Product Add-ons to 3.0.16. * Improvement - Appointment list in admin now renders through WC_Admin_List_Table. * Improvement - Consolidated cache logic into a single class. * Improvement - Cache is disabled when WC_APPOINTMENTS_DEBUG is true. * Improvement - Consolidated appointment cost caluclation into asingle class. * Improvement - Minimum height for calendar events in admin not set. * Improvement - Updated all translations. * Improvement - Customer billing data is display preferably if available. * Improvement - Soft deprecated `WC_Appointments_Form::convert_to_moment_format()` replaced with `wc_appointments_convert_to_moment_format()`. * Improvement - Soft deprecated `WC_Appointments_Form::get_posted_data()` replaced with `wc_appointments_get_posted_data()`. * Improvement - Soft deprecated `WC_Appointments_Form::is_appointable()` replaced with `WC_Product_Appointment::is_appointable()`. * Improvement - Soft deprecated `WC_Appointments_Form::get_formatted_times()` replaced with `wc_appointments_get_formatted_times()`. * Improvement - Soft deprecated `WC_Appointments_Form::calculate_appointment_cost()` replaced with `WC_Appointments_Cost_Calculation::calculate_appointment_cost()`. * Improvement - Soft deprecated `WC_Appointments_Controller::get_appointments_in_date_range()` replaced with `WC_Appointment_Data_Store::get_appointments_in_date_range()`. * Improvement - Soft deprecated `WC_Appointments_Controller::get_appointments_in_date_range_query()` replaced with `WC_Appointment_Data_Store::get_appointments_in_date_range_query()`. * Improvement - Soft deprecated `WC_Appointments_Controller::get_events_in_date_range()` replaced with `WC_Appointments_Availability_Data_Store::get_events_in_date_range()`. * Improvement - Soft deprecated `WC_Appointments_Controller::get_global_availability_in_date_range()` replaced with `WC_Appointments_Availability_Data_Store::get_global_availability_in_date_range()`. * Improvement - Soft deprecated `WC_Appointments_Controller::get_all_existing_appointments()` replaced with `WC_Appointment_Data_Store::get_all_existing_appointments()`. * Improvement - Soft deprecated `WC_Appointments_Controller::get_appointments_for_objects()` replaced with `WC_Appointment_Data_Store::get_appointments_for_objects()`. * Improvement - Soft deprecated `WC_Appointments_Controller::get_appointments_for_objects_query()` replaced with `WC_Appointment_Data_Store::get_appointments_for_objects_query()`. * Improvement - Soft deprecated `WC_Appointments_Controller::get_appointments_for_product()` replaced with `WC_Appointment_Data_Store::get_appointments_for_product()`. * Improvement - Soft deprecated `WC_Appointments_Controller::get_appointments_for_user()` replaced with `WC_Appointment_Data_Store::get_appointments_for_user()`. * Improvement - Soft deprecated `WC_Appointments_Controller::get_latest_appointments()`. Not used in Appointments. * Improvement - Soft deprecated `wc_appointments_get_time_slots()` replaced with `WC_Product_Appointment::get_time_slots()`. * Improvement - Soft deprecated `wc_appointments_get_time_slots_html()` replaced with `WC_Product_Appointment::get_time_slots_html()`. * Improvement - Soft deprecated `wc_appointments_get_global_availability()` replaced with `WC_Appointments_Availability_Data_Store::get_global_availability()`. * Improvement - Soft deprecated `wc_appointments_get_staff_availability()` replaced with `WC_Appointments_Availability_Data_Store::wc_appointments_get_staff_availability()`. * Improvement - Soft deprecated `delete_appointment_slots_transient()` replaced with `WC_Appointments_Cache::delete_appointment_slots_transient()`. * Fix - Filtering product and staff in admin calendar were not strict. * Fix - Add-ons and membership plugin not working ok - add-ons being discounted when they shouldn't. * Fix - WC POS seems to not be compatible - throwing error. * Fix - Availability for staff shown unavailable (blocked) when padding days are used. * Fix - Inclusive/exclusive inconsistency in logic for blocking Google Events' times. * Fix - Some Google Calendar events hidden in admin calendar. * Fix - Addons query duplicated and slows down loading with a lot of addons. 2019.09.09 - version 4.6.2 * Improvement - Clear time slots transients. * Fix - Saving any product type saves it as 'Appointable product'. * Fix - Lead Time - Weeks interpreted as Months. 2019.09.08 - version 4.6.1 * Fix - Cart item removal error. 2019.09.07 - version 4.6.0 * Feature - Full integration with Kadence WooCommerce Email Designer plugin. * Improvement - Updated Product Add-ons to 3.0.15. * Improvement - Simplified the email templates. * Improvement - Simplified the email templates styling to conform with external email editing plugins. * Improvement - [appointment_form] shortcode loads without parameters on a product page. * Improvement - Added RTL support to all email templates. * Improvement - Revert to default duration, when duration is zero or negative. * Improvement - Deposits compatibility when adding apointment in admin. * Improvement - Make the custom pricing rules accept 5 decimal places so that it can be rounded properly. * Improvement - Updated all translations. * Fix - Fatal error in admin calendar – Invalid UNTIL property for RRULE. * Fix - Conflict with Free products and Memeberships plugin. * Fix - Lead time hours not working ok - adds 1 hour too much. * Fix - Wrong duration when more than 24 hours. * Fix - Renamed filters back: 'woocommerce_events_calendar_single_card_data' => 'woocommerce_appointments_calendar_single_card_data' 'woocommerce_events_calendar_view_day_scale' => 'woocommerce_appointments_calendar_view_day_scale' 'woocommerce_events_calendar_view_single_card' => 'woocommerce_appointments_calendar_view_single_card' * Fix - Multiple appointments with add-ons in 1 order add add-on options prom prev appointments. 2019.07.25 - version 4.5.14 * Improvement - Dropped support for WooCommerce 2.6 (3 years old) for security issues. * Improvement - Compatibility with WooCommerce Twilio SMS Notifications 1.12.3. * Improvement - Attch .ics to Customer order emails. * Improvement - Updated all translations. * Improvement - Replaced method_exists with is_callable to prevent private methods from showing up. * Fix - Fatal error – Invalid UNTIL property for RRULE. 2019.07.23 - version 4.5.13 * Improvement - Removal of all plugin data on un-installation. Constant 'WC_REMOVE_ALL_DATA' must be true. * Improvement - Added filter 'woocommerce_appointments_stop_recalculate_order' customers can use to prevent order recalculation after appointment cancellation. * Improvement - Compatibility with WooCommerce 3.7. * Fix - Hold stock (minutes) used for holding appointments in cart. Stock time not respected. * Fix - empty_cart empties customer cart, but does not clear the Appointment cart. * Fix - Qty was set for appointment on each appointment load. * Fix - Change reminder scheduled action, when start time changes. * Fix - Editing appointment that was added through admin could cancel the reminder. * Fix - Editing appointment that was paid with COD could cancel the reminder. * Fix - Stop plugin from rendering, when WooCommerce isn't installed correctly. 2019.07.18 - version 4.5.12 * Fix - In Calendar guest name is not displayed anymore. * Improvement - Updated @build dependencies for more efficient compressions. * Improvement - Used advanced ESlink rules to tidy the JS code. 2019.07.15 - version 4.5.11 * Improvement - Moved Availability filtering widget to /includes folder. * Improvement - Moved Customize controls to /includes folder. * Improvement - Merged product import and export class to remove duplicated default properties. * Fix - Fixed integration with plugin WooCommerce Price Based on Country. 2019.07.14 - version 4.5.10 * Improvement - Updated Add-Fons to 3.0.13. * Improvement - Updated all translations. * Fix - Admin calendar events overlapping. 2019.07.13 - version 4.5.9 * Improvement - Mark unavailable times synced from gCal in WP admin calendar. * Fix - Recurring events from Google calendar not synced to correct time zone. * Fix - Appointments in Trash sending appt reminders. 2019.07.05 - version 4.5.8 * Improvement - Updated Add-ons to 3.0.12. * Improvement - Updated RRULE to 2.1.0. PHP 5.6 is now required as minimum. * Improvement - Improved integration with plugin WooCommerce Price Based on Country 1.8.9. 2019.07.05 - version 4.5.7 * Improvement - Prepared appointment form to support rescheduling in future updates. * Fix - Product Time zone not working in shortcode. * Fix - Product Availability auto-select not working in shortcode. 2019.07.04 - version 4.5.6 * Improvement - Remove appointments filtering by created date in admin list table. * Improvement - Option to filter appointments in admin with Start/End date filters. * Improvement - Updated all translations. 2019.07.02 - version 4.5.5 * Improvement - Appointment customer details now read from WC_Customer class. * Improvement - Filter 'appointments_cancel_appointment_url' now includes the appointment class as parameter. * Improvement - Fixed customer phone display in calendar dialog in admin. * Improvement - Updated Hebrew translation. 2019.07.01 - version 4.5.4 * Improvement - Checking if product is 'appointment' type is simplified. * Fix - Removed $order_parent_id that was not in use and caused plugin compatibility issues. 2019.06.28 - version 4.5.3 * Improvement - Added 'calendar-data-loaded' trigger that allows hooking into calendar after it is loaded. * Improvement - Updated moment.js libraries. * Improvement - Performance optimization for generation of appointment slots. * Improvement - Staff - No preference - selection is now disabled by default. * Improvement - REST API permissions were not set correctly. * Fix - Compatibility issue with API hook timing. * Fix - When multiple staff assigned and one is unavailable, the 'no preference' shows no slots. * Fix - Product with multiple staff 'No pref' not working ok. 2019.05.24 - version 4.5.2 * Fix - gCal sync from WP to gCal does not work on 4.5.1. * Fix - Duplicating an appointable product resulted in an error. * Fix - Duplicating an appointable product did not duplicate availability. 2019.05.20 - version 4.5.1 * Improvement - New Appointable products do not have the 'Virtual' option selected by default anymore. * Improvement - Sync appointments to gcal payed with a Deposit. * Improvement - Sync schedule now hooked to 'action_scheduler_after_process_queue'. Prevents crowding the DB. * Improvement - Sync schedule can now be disabled through 'action_scheduler_after_process_queue' action. * Improvement - 'availability_autoselect', 'customer_timezones' possible attributes for [appointment_form] shortcode. * Fix - Missing appointment ID from /appointments REST API. * Fix - Add-on error when product price is empty. * Fix - Add-on price could not be hidden with a filter. * Fix - Unable to view Global Availability issue. * Fix - Appointment reminder email seems to be timing on GMT not local time. * Fix - gCal too many action_schedulers even when there are no events in gCal. 2019.04.26 - version 4.5.0 * Feature - REST API support to GET: /appointments, /availabilities, /products, /slots. * Improvement - Updated Action scheduler library to 2.2.5. * Improvement - Transients caching issues for availability rules and GCal sync. * Improvement - Updated all translations. * Improvement - Past Google events displayed as availability rules. Hide them. * Fix - Added missing $product object to 'woocommerce_before_add_to_cart_button' hook. * Fix - Twilio appointment confirmation and follow up SMS not sending. 2019.04.22 - version 4.4.9.4 * Improvement - Updated Product Add-ons to 3.0.11. * Improvement - Caching plugin (probably W3TC) asks us to call to wp_cache_flush once the sync of is finished. * Fix - Appointment card shows the Cost of the order instead of the appointment. * Fix - Adding new date rules on staff profile page bug. 2019.04.18 - version 4.4.9.3 * Fix - Don't sync when access token is empty. * Fix - Add-on duration defined in minutes, when product duration is either hours or minutes. * Fix - Unwanted element at the bottom of the single appointable product page. * Fix - WPML not syncing availability rules across products. 2019.04.16 - version 4.4.9.2 * Improvement - Compatibility check with WooCommerce TM Extra Product Options 4.8.4. * Improvement - Duration not prettified for hours. * Fix - Add-on checkbox pre-selected, but empty after adding product to cart. * Fix - Can't add appointment to existing order. * Fix - Reset all appointment card details data on each selection. 2019.04.12 - version 4.4.9.1 * Fix - Add-on duration error displayed. 2019.04.12 - version 4.4.9 * Improvement - Moment Timezone JS library only included, when product supports time zones. * Improvement - Availability and Pricing rule validation with smarter inputs. * Improvement - Added more options to extend the calendar appearance. * Fix - Availability between different products and same staff not showing correctly in calendar. * Fix - Add-ons not hiding price on radio buttons. * Fix - Add-on duration and didn't accept negative price and duration. 2019.04.10 - version 4.4.8 * Fix - $wp_locale not defined. * Fix - Recurring events failed to parse RFC string, unsupported property: EXDATE. 2019.04.09 - version 4.4.7 * Improvement - Send reminders for appointments, created in admin. * Fix - Staff price not counted when multiple staff automatically assigned * Fix - Removed duplicated product property "get_padding_duration_minutes()". * Fix - Padding not working. * Fix - Recurring events not working when timezone for UNTIL is not specified. * Fix - Reminders not going out at the right time. * Fix - Addon duration display when adding appointment in admin. 2019.04.05 - version 4.4.6 * Improvement - Big Performance improvement with large number of appointments scheduled. * Improvement - Add note to settings for Appointment Confirmed email. * Improvement - Updated all translations. * Improvement - Add the option to filter 'without staff' by selecting '–' in appointments list. * Improvement - Backend Calendar for staff members optimizations. * Fix - Addons with value below 1 are not being added to the total. * Fix - WooCommerce Twilio SMS Notifications 1.12.0 compatibility check. * Fix - Added back support for WooCommerce Twilio SMS Notifications below version 1.12.0. * Fix - Automatically assigned staff shows unavailable days as clickable. * Fix - Staff assigned together not working. 2019.04.03 - version 4.4.5 * Fix - Performance issues. 2019.04.03 - version 4.4.4 * Fix - Fatal error: after changing Gcal function name in version 4.4.3. 2019.04.02 - version 4.4.3 * Fix - Fatal error: "class-wc-appointments-init.php" file had $this called wrong. 2019.04.02 - version 4.4.2 * Improvement - Introduced 'woocommerce_appointments_calendar_single_card_data' filter. * Improvement - Simplified admin calendar dialog for appointments. * Fix - Fatal error during update. 2019.04.02 - version 4.4.1 * Fix - Disallow zero as availability priority. Possibly set during upgrade to 4.4.0. * Fix - Spanish translation had some off strings. 2019.04.01 - version 4.4.0 * Feature - Full/extended integration with Twilio SMS Notification extension. * Feature - Added CRUD for all availability rules. * Feature - Added "Date range with time" availability rule. * Feature - Ability for staff to sync 2-way or 1-way with their Google Calendar. * Improvement - Appointable product pre-selected when creating new product for the first time. * Improvement - Updated Action scheduler library to 2.2.1. * Improvement - Updated Product Add-ons to 3.0.10. * Improvement - Updated all translations. * Improvement - Simplified Add Appointment screen in admin. Removed No order option. * Improvement - Global availability is not set by default any more. * Improvement - Better compatibility with external email customization plugins. * Improvement - Disable marketplace suggestions to remove confusion. * Improvement - Sync from Google now operates on 1 minute intervals for both staff and globally. * Improvement - Sync cash on delivery appointments to Google. * Fix - Cannot add appointments in the backend. * Fix - Staff cannot select a calendar after initial calendar ID selection. * Fix - Gcal manual update shows last synced timestamp even if no events are synced. * Fix - PHP 7.3.2 compatibility. * Fix - Date picker not showing blocked dates correctly. * Fix - Padding calculations. * Fix - WPML compatibility re-check. * Fix - No preference showing unavailable days. 2019.03.02 - version 4.3.4 * Feature - Added today's appointments to My account page. * Improvement - WordPress 5.1 compatibility. * Improvement - Moved installation and initialization functions into a separate class. * Improvement - Increased JS standard to ES6. * Improvement - Expanded compatibility for DateTime in older PHP versions and WC Ajax. * Improvement - Added libraries from "Google PHP Client" and "RRule" for both PHP and JS. * Improvement - Updated all translations. * Fix - My account appointments show "Appointment" instead of "Appointments". * Fix - Addon duration for time slots not transferred when switching days. * Fix - .ics missing for admin email notification. * Fix - All assigned staff have available slots, when there should be none. 2019.02.14 - version 4.3.3 * Fix - Availability rules not showing up. 2019.02.13 - version 4.3.2 * Improvement - Updated Product Add-ons to 3.0.8. * Improvement - Removed all 'dashicons' dependencies on frontend. * Improvement - Better RTL syntax. * Improvement - Admin Calendar now has split product and staff filter. * Fix - Timezone auto detection not working when multiple appointment shortcodes are used on same page. 2019.02.09 - version 4.3.1 * Fix - Availability filter calendar not displayed correctly. 2019.02.08 - version 4.3.0 * Feature - Added Availability filter widget. * Feature - Added full Italian translation. Many thanks to Giuseppe S. for the contribution. * Improvement - Add warning when adding Appointment to cart that requires confirmation and simple product is already in. * Improvement - Updated all translations. * Improvement - Updated Action scheduler library to 2.2.0. * Improvement - Updated Product Add-ons to 3.0.7. * Improvement - Decluttered appointment list UX and unified status label UI with WooCommerce order label UI. * Improvement - Incompatibility with Elementor plugin. * Fix - All users see staff fields in user edit screen. * Fix - Availability calculation for additional products is wrong when using WPML 2019.01.20 - version 4.2.9.6 * Feature - Added filter 'appointment_form_pricing_rules_for_start_date' for pricing rules to work on start date only. * Improvement - Time zone name (city by default) is added to all appointments for products with time zones enabled. * Improvement - Time zone selection when multiple products with time zones are displayed at once. * Improvement - Staff selection when multiple products with staff are displayed at once. * Improvement - Additional check before running $field->validate(). * Improvement - Updated all translations. * Improvement - Added option for month and year selection on the calendar through "wc_appointment_form_params" filter. * Fix - PHP 7.3 issue with add-ons. * Fix - RTL adjustment for prev/next month in calendar navigation. 2019.01.04 - version 4.2.9.5 * Improvement - Changed naming to "Admin New Appointment" to better reflect mail recipient. * Improvement - Hardened emails for extensions send order instead of appointment object. 2019.01.04 - version 4.2.9.4 * Fix - Automatic time zone conversion on initial cookie setup. * Fix - Time zone in customer's emails not showing up. 2019.01.03 - version 4.2.9.3 * Fix - Timezone selection positioning. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/450/padding-not-working-ok-in-4292 2018.12.31 - version 4.2.9.2 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/449/js-tiptip-error-on-single-product-page-of 2018.12.28 - version 4.2.9.1 * Fix - https://bookingwp.com/forums/topic/ghost-appointment/ 2018.12.24 - version 4.2.9 * Feature - Added reminder email time control. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/402/add-reminder-email-time-control * Improvement - Decluttered email settings and made them in line with default WooCommerce email options. * Improvement - Shorter default emails subject lines more in line with default WooCommerce email lines. * Improvement - Updated all translations. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/447/staff-inventory-not-working-ok * Fix - Compatibility with WC Follow Up Emails extension. * Fix - Temporarily moved jQuery TipTip addon to all pages. 2018.12.18 - version 4.2.8 * Fix - Add-ons not calculating duration, when quantity based. * Fix - Make sure translated plugin still updates automatically. 2018.12.13 - version 4.2.7 * Improvement - Add default date / time format when empty https://bitbucket.org/bookingwp/woocommerce-appointments/issues/444/add-default-date-time-format-when-empty * Improvement - Updated Product Add-ons to 3.0.5. * Improvement - Added WooCommerce plugin required notice after Appointments activation and no WooCommerce present. * Fix - License screen error. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/406/php-warnings-on-edd_sl_plugin_updatephp * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/443/with-padding-before-it-does-not-remove-the * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/429/my-account-wpml-not-all-appointments-are 2018.12.08 - version 4.2.6 * Improvement - Appointment form style as inline-block to make sure width is 100% when form is floated. * Improvement - Better connection with WooCommerce TM Extra Product Options and Add-ons combined. * Fix - Timezone picker could disable click actions on product site. * Fix - Select options for add-ons were missing None. 2018.12.05 - version 4.2.5 * Feature - Auto-detect customer's timezone. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/431/automatically-select-customers-timezone * Improvement - Timezone selection closed when clicked outside the selection box. * Improvement - Added "Moment" JS library for better time manipulation. * Improvement - Updated all translations. * Fix - Addon cart error during update. 2018.12.03 - version 4.2.4 * Fix - Make sure appointment is displayed only on orders with products attached. 2018.12.01 - version 4.2.3 * Improvement - Deactivate WC Product Add-ons extension if active and add a notice. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/437/add-warning-for-those-who-use-the-product * Improvement - Better license activation notice. * Improvement - Import/Export meta fields not translated, decluttering translation text-strings. * Improvement - Updated all translations. * Improvement - Updated Action scheduler library to 2.1.1. 2018.11.30 - version 4.2.2 * Improvement - Temporarily disable None option for add-on fields (multichoice, radio button, ...) https://bitbucket.org/bookingwp/woocommerce-appointments/issues/435/multichoice-unrequired-addon-adds-an-extra * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/433/template-datetime-pickerphp-missing * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/434/incompatibility-with-yith-wc-gift-cards * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/436/problems-with-latest-version * Fix - Backward compatible with default WC Product Add-ons extension. 2018.11.24 - version 4.2.1 * Improvement - Updated Product Add-ons to 3.0.4. * Fix - Error in certain cases for the date picker. * Fix - Addons with no cost or duration disable "book now" button. 2018.11.23 - version 4.2.0 * Improvement - WordPress 5.0 + Gutenberg full compatibility. * Improvement - Updated Product Add-ons to 3.0.3. * Improvement - Allow negative duration value in add-ons. * Improvement - Ability to calculate add-on duration, based on quantity scheduled. * Improvement - Switch to WooCommerce library for Select2 script. * Improvement - Performance improvement for products that contain many appointable slots. * Improvement - Prevent loading of availability on initial page load. * Improvement - Added 100% Hebrew translation. Thanks yoni katz ;) * Improvement - Updated all translations. * Improvement - Move add-ons on orders to end of meta instead of the beginning. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/427/availabilty-not-syncing-with-gcal * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/426/add-ons-are-always-multiplied-with-cost * Fix - Outdated Order again button template. * Fix - JS error in console when trying to save a product that's not an appointment. Prevents saving. * Fix - Break after first application of custom rule on an appointment slot. * Fix - Rounding issue when manually adding an appointment and generating an order. * Fix - File upload add-on fields did not calculate cost and duration properly. 2018.10.28 - version 4.1.8 * Improvement - added filter 'woocommerce_appointments_time_slot' to allow filtering single slots. 2018.10.28 - version 4.1.7 * Improvement - Updated Action scheduler library to 2.1.0. * Improvement - Display update notification even when license is not active. * Fix - Multiple dates in querystring. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/424/multiple-dates-in-querystring * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/425/autoselect-first-available-slot-nor * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/419/simple-and-appointbale-product-in-one 2018.10.23 - version 4.1.6 * Improvement - Do not display user edit link when current user cannot edit the user. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/415/the-slot-cannot-be-scheduled-issue * Fix - Calendar color selection in Customizer no longer works. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/417/calendar-color-selection-in-customizer-no * Fix - Querystring does not retain all parameters after refresh. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/418/missing-slot-on-page-refresh-when-failing * Fix - Retain selected time (when available) when switching through dates. 2018.10.12 - version 4.1.5 * Feature - Added "One Page Checkout" integration. https://woocommerce.com/products/woocommerce-one-page-checkout/ * Improvement - Do not query staff for appointments without staff. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/412/ics-provider-unknown * Improvement - Added 'wc_appointments_ics_exporter' filter for .ics output. * Improvement - Added 'wc_appointments_ics_appointment' filter for .ics appointment event. * Improvement - Updated Product Add-ons to 2.9.7. * Improvement - Better translation guidance. * Improvement - Querytring updated upon each selection of date, time or staff. * Improvement - No need for disabled (i18n_choose_options) alert as buttons have disabled prop, not class. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/410/remove-failed-to-retrieve-and-generate-the * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/409/fix-wpml-appointment-to-not-have * Improvement - Updated all translations. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/414/bug-wc_product_appointment_rule_manager * Fix - Staff extra cost HTML escaped incorrectly. 2018.09.22 - version 4.1.4 * Improvement - Big security update, escaped all output. * Improvement - Optimized code according to WordPress coding standards. * Improvement - Appointments list in admin styled for mobile. * Improvement - Updated all translations. * Fix - Added back "datepicker( 'refresh' )" to after each autoselect. * Fix - Only fetch Google Calendar events, when access token exists. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/403/cant-set-email-subject-and-heading-through * Fix - Emails not sent for apppointments without orders https://bitbucket.org/bookingwp/woocommerce-appointments/issues/408/send-reminder-email-to-appointments 2018.09.09 - version 4.1.3 * Improvement - Removed "datepicker( 'refresh' )" after each autoselect. 2018.09.09 - version 4.1.2 * Improvement - Faster appointment form load times by code optimization. * Improvement - Removed double cost calculation on add-on selection. * Improvement - Removed double cost calculation on staff selection. * Improvement - Removed double cost calculation on date selection. * Improvement - Reduced staff queries to $product, when call is just by staff_id. * Improvement - Cached staff query to remove duplicates on single page load. * Improvement - Removed duplicated add-on calls for before/after appointment form. * Improvement - Updated WPML compatibility to WooCommerce Multilingual 4.3.5. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/390/inventory-with-wpml-missing-slots-left-for * Fix - Added "datepicker( 'refresh' )" to after each autoselect. * Fix - Add-ons added in admin were sometimes not added. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/394/check-tm-extra-options-plugin-integration 2018.08.31 - version 4.1.1 * Fix - Auto-selecting first available slot not working. Props to /Mattias F. 2018.08.31 - version 4.1.0 * Improvement - Replaced WP cron with Action scheduler for better transparency and reliability. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/385/add-possibility-to-schedule-cron-server https://bitbucket.org/bookingwp/woocommerce-appointments/issues/374/multiple-emails-sent * Improvement - All scheduled actions/emails are available inside "WooCommerce > Status > Scheduled Actions". * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/398/follow-ups-plugin-should-have-the-user * Improvement - Removed $product dependencies in static wc_appointment_form_params script to allow for multiple dynamic appointment forms on the same page. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/382/could-we-use-staff-everywhere-on-the * Improvement - Removed manual email notifications from commented code. * Improvement - Confirmation emails are not sent the same way as admin appointment notifications for better tracking. * Fix - Make sure staff quantity cannot be negative. * Fix - Do not initiate staff gcal sync, when calendar ID is not set. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/399/slots-with-staff-availability-not-working * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/397/calendar-not-refreshing-right-when-auto * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/362/multiple-shortcodes-on-same-page-are-not 2018.08.18 - version 4.0.0 * Feature - Customers can set their own timezones. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/164/calendar-not-changing-with-local-time https://bitbucket.org/bookingwp/woocommerce-appointments/issues/173/better-timezone-support https://bitbucket.org/bookingwp/woocommerce-appointments/issues/361/timezone-not-working-ok * Improvement - Custom pricing rules now apply to add-ons as well. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/392/add-custom-pricing-rules-for-add-ons * Improvement - Updated all translations. * Improvement - Added hook to allow bypassing slot availability checker * Improvement - Product filters now ordered by product title for easier searching. * Improvement - Reduced ajax cost calculation calls with time slots. * Improvement - Added hook 'woocommerce_appointments_gcal_sync_parameters' to allow filtering all gcal parameters. * Fix - Display appointments from "order ID" instead of "order item ID" as "_appointment_order_item_id" is not always unique. * Fix - Deprecated "btoa" function in JS for DatePicker in International Browsers. * Fix - Book now button is now disabled per html and per css class "disabled" https://bitbucket.org/bookingwp/woocommerce-appointments/issues/345/disable-book-now-button-until-everything 2018.07.13 - version 3.9.2 * Improvement - Updated all translations. Thank you "Julien Lorion" for French translation. * Fix - WPML now works for product staff quantity. * Fix - WPML translates email notifications. * Fix - WPML missing staff added to all translated appointments. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/384/refunding-part-of-appointment-cancels-the 2018.07.04 - version 3.9.1 * Fix - Transferred plugin license to a new BookingWP site. 2018.07.02 - version 3.9.0 * Improvement - Rebranded plugin's author and parent to BookingWP * Improvement - Re-tested WooCommerce Multilingual (WPML) 4.3.2.1 compatibility. No issues, added restricted days meta fields. * Improvement - Better Polylang for WooCommerce 1.0.1 compatibility. * Fix - https://bookingwp.com/forums/topic/the-booking-calendar-no-longer-shows/ * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/346/date-picker-problem-with-non-latin-chars * Fix - https://bookingwp.com/forums/topic/fatal-php-error/ 2018.05.25 - version 3.8.9 * Improvement - Updated Product Add-ons to 2.9.6 2018.05.25 - version 3.8.8 * Improvement - Updated Product Add-ons to 2.9.5 * Improvement - GDPR Privacy policies. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/372/add-gdrp-privacy-tools-for-appointments * Improvement - Export/erasure hooks added. * Improvement - WC 3.4 compatibility. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/371/staff-details-in-edit-user-profile-doubled * Improvement - Updated all translations. * Fix - https://bookingwp.com/forums/topic/manually-added-appointments-that-get-deposit-paid-dont-sync-to-gcal/ * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/365/add-the-option-to-set-the-display-of-days * Fix - Notice: Undefined variable: array in ..../class-wc-appointments-integration-gcal.php on line 762 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/370/staff-members-error-when-adding * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/368/calendar-bug-when-duration-is-1-day * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/367/show-error-when-saving-product-without-add * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/360/appointment-quantity-bug * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/363/cant-sync-staff-calendar-when-signed-in-as 2018.05.11 - version 3.8.7 * Improvement - Switched from `wp_ajax` to `wc_ajax` * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/355/staff-availability-wrong * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/356/sms-reminder-sent-after-appointment 2018.05.04 - version 3.8.6 * Improvement - Lighter borders for appointment form. * Improvement - Changed default highlight color to hex #111 * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/350/add-appointment_date-to-the-new Added {appointment_start} and {appointment_end} email shortcodes for email notifications. * Improvement - Added option to not show -- No preference -- option for staff selection. * Improvement - Updated Product Add-ons to 2.9.3 * Improvement - Updated all translations. * Fix - FirstDay in admin calendar picker not working, typo: fistday instead of firstday * Fix - Do not display empty rule for staff with no rules in admin user profile edit screen. * Fix - No preference doesn't count staff qty correctly, when staff is assigned through profile edit screen. 2018.04.30 - version 3.8.5 * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/347/choose-weather-to-muliply-addon-price-per * Improvement - Add .disabled class attributes for themes that do not have it. * Improvement - Updated all translations. * Improvement - Refactor `get_available_slots` parameters. * Improvement - Added 'woocommerce_after_appointment_form_output' hook for processing addons. * Improvement - Moved 'woocommerce_before_add_to_cart_button' hook to default location. * Improvement - Simplified integration with TM Extra Product options plugin. * Improvement - Simplified integration with Gravity Forms Product Add-Ons plugin. * Fix - Error, when Google Calendar sync settings not set correctly. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/344/gcal-connection-show-error-but-works-ok * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/342/appointment-color-from-customizer-not * Fix - Reminder Emails: Same-day appointments contain the text 'tomorrow'. * Fix - Calendar doesn't load the correct availability for different staff. * Fix - JavaScript error for DatePicker in International Browsers. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/346/date-picker-problem-with-non-latin-chars * Fix - Make sure arrays in order values are imploded with gCal sync. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/348/throw-error-on-activation-is-wc-addons * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/351/calendar-not-loading-when-opening-website 2018.04.20 - version 3.8.4 * Improvement - Temporarily disable 'find-scheduled-day-slots' nonce. 2018.04.18 - version 3.8.3 * Fix - Padding for products messed calendar with hour/minute duration. 2018.04.18 - version 3.8.2 * Improvement - Send new appointment notification to admin and staff for Cash on Delivery appointments. * Improvement - Delete all gCal sync events on plugin un-installation. * Fix - Auto-select first available date in one of next available months. 2018.04.17 - version 3.8.1 * Improvement - Updated Product Add-ons to 2.9.2 * Fix - Cannot add appointments in admin. 2018.04.16 - version 3.8.0 * Feature - Lazy load front-end calendar and cache the output for large number of appointments. * Feature - Present appointment info in WooCommerce dashboard widget in admin. For new appointments (monthly) and appointments that require confirmation * Improvement - Moved new email notifications for admin/staff outside WC_Emails::send_transactional_email. * Improvement - Show when month is fully or partially scheduled. * Improvement - Improved UI for appointment edit screen in admin. * Improvement - Updated all translations. * Fix - Don't allow last minute to be removed for global availability. * Fix - Slots shown as unavailable, when quantity still exists. * Fix - PHP Notice: Undefined variable: settings. * Fix - New appointment email notification to admin goes into loop. * Fix - Billing details overwritten when assigning new manual appointment to existing order purchased by guest. * Fix - Fix PHP notices by passing through the email parameter. 2018.04.06 - version 3.7.3 * Fix - Admin calendar fixed header height span. 2018.04.06 - version 3.7.2 * Improvement - Admin calendar now includes staff view. * Improvement - Admin calendar improved on all levels, built with flexbox and more responsive. * Fix - Event removal for staff and main calendar upon cancellation. * Fix - Admin calendar positioning for daily view appointments. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/332/translation-not-working-because-of-typo * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/335/cancelled-appointment-not-removed-from * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/337/staff-stays-linked-when-changing-product * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/333/gcal-sync-not-working-ok 2018.04.02 - version 3.7.1 * Fix - Fix 500 error on gCal sync with misconfigured calendar ID. 2018.04.02 - version 3.7.0 * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/20/option-to-sync-staff-with-their-own-google * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/315/refactor-calendar-sync-from-google * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/322/gcal-livesync-not-working * Improvement - Only show quantity Left per slot, when Max and Left are the same. * Improvement - 50% Better performance for large number of appointments. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/325/memberships-discount-not-working-from * Improvement - Updated all translations. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/328/backend-appointment-gcal-sync * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/301/recuring-events-in-gcal-should-sync-more * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/326/wpml-slots-left-acting-weird * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/327/temporary-appointments-dont-get-deleted * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/330/inventory-in-availability-rueles-not 2018.03.20 - version 3.6.9 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/321/add-appointment-to-order-from-dashboard * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/323/time-picker-error-in-mozilla 2018.03.16 - version 3.6.8 * Improvement - Additional checks for empty SKU in [appointment_form] shortcode. * Improvement - Add-ons with duration work better with appointment form. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/318/pending-confirmation-appointments-give * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/294/addons-multiplied-by-3 * Improvement - Additional WPML checks for appointment email translations, which require WPML String translation service. 2018.03.04 - version 3.6.7 * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/291/show-products-associated-with-staff-on * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/313/add-staff-to-product-even-if-staff-is-not * Improvement - Updated all translations. * Improvement - Slightly updated UX for staff management in product edit screen. * Fix - Additional checks for add-on field price format. * Fix - WPML duplicated appointment form on add-to-cart action. 2018.02.28 - version 3.6.6 * Improvement - Reduce expensive ajax query to ""$appointment_form->get_posted_data" when possible. * Improvement - Improved Availability settings UX to better accommodate Gutenberg editor. * Improvement - Updated all translations. * Fix - Additional checks for [appointment_form] shortcode. * Fix - Don't duplicate WPML appointments, when translated product doesn't exist. * Fix - Schedule cart removal for duplicated appointments in WPML. 2018.02.26 - version 3.6.5 * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/312/add-priority-levels-for-each-rule * Improvement - Updated all translations to include new strings from new features. * Improvement - Clear 'wc-appointment-remove-inactive-cart' scheduled hook on execution. Loophole when fired manually. * Fix - Do not calculate costs twice when add-ons selected with timeslots. 2018.02.24 - version 3.6.4 * Feature - Added full Polylang integration. * Feature - Added integration with WooCommerce Create Customer on Order; create a customer when adding appointment in admin. * Feature - Option to render add-on fields before and/or after the appointment form. * Feature - Add-on fields duration now adjust timeslots shown. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/308/dont-count-cancelled-appointments-to-order * Improvement - Updated all translations to include new strings from new features. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/307/availability-display-issue-when-assign-all * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/310/polylang-emails-only-in-wp-site-language 2018.02.15 - version 3.6.3 * Improvement - Improved compatibility with WooCommerce Follow Up Emails 4.6.4 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/309/auto-update-from-361-to-362-doesnt-work 2018.02.12 - version 3.6.2 * Improvement - Updated all translations to include months feature. * Fix - Warning and notice for confirmation emails. 2018.02.11 - version 3.6.1 * Improvement - Move Appointments customizer controls under WooCommerce panel. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/303/add-option-to-only-sync-in-1-direction * Fix - Remove notice on appointment edit screen, when Google Calendar event is selected instead of regular product. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/298/1-day-duration-takes-2-days-after-syncing * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/304/gcal-events-synced-to-site-should-only 2018.02.10 - version 3.6.0 * Feature - Added monthly duration option_name https://bitbucket.org/bookingwp/woocommerce-appointments/issues/305/add-monthly-duration-option * Feature - Appointments data included in WooCommerce core import and export functionality. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/296/demo-imports * Improvement - Added $spaces_left to 'woocommerce_appointments_time_slot_html' filter. * Improvement - Added 'wc_appointments_staff_availability' filter for user availability. * Improvement - Added compatibility for Sequential Order Numbers Pro. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/297/hide-an-unused-time-slot-range-in * Improvement - Added WPML compatibility with Add-on fields. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/299/remove-warning-for-global-rules-in * Fix - https://bookingwp.com/forums/topic/products-add-on-not-updating-pricing-in-cart/ * Fix - Added fourth arg in Confirmation emails for actions. * Fix - Slots available after max available time. * Fix - Double check product exists before attempting to get_title(). * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/306/inventory-in-no-pref-not-working-ok * Fix - Do not add custom pricing, when it is disabled, even when custom pricing rules exist. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/294/addons-multiplied-by-3 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/288/wrong-inventory-with-wpml * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/300/string-x-slots-left-wrong-with-wpml 2017.12.22 - version 3.5.7 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/286/incorrect-slot-availability-calculation-on * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/288/wrong-inventory-with-wpml * Fix - Filter "wc_apointments_check_appointment_product" was checking wrong product ID. 2017.12.18 - version 3.5.6 * Improvement - Added weekday-x, with x as day number of week for each calendar day. * Improvement - Bump tested version to WooCommerce 3.3 * Improvement - Order metadata synced with Google Calendar sync. * Improvement - Better indication of places left, with overall number when staff is assigned. * Improvement - Updated all translations. * Improvement - Updated Product Add-ons to v2.9.1 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/289/change-in-code * Fix - Appointments overwriting notes made directly on Google Calendar on subsequent syncs. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/216/wc-memberships-base-price-discounted-twice * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/284/week-start-day-wrong-calendar-class-ui * Fix - Customer defined slots by hour durations buffering by incorrect amounts. * Fix - Remove activation notice when plugin is deactivated. * Fix - Global and product rule not overriding staff rules when calling get_slots_in_range directly * Fix - Incorrect remaining count on slots when staff members overlap and are set to automatically assigned. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/290/wc_availability_rules_priority-acting * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/251/not-working-with-gravity-forms-add-ons * Fix - Added 1 hour to lead time to account for current time. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/286/incorrect-slot-availability-calculation-on * Fix - WPML not duplicating staff across all languages. * Fix - WPML removing all staff inventory for translated products, even when more qty is available. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/288/wrong-inventory-with-wpml * Fix - Deposit integration parent order not marked as completed when it contains an appointment. * Fix - Failed order's appointments are never cancelled. * Fix - Make sure lead time accounted for start time as well as end time. 2017.11.23 - version 3.5.5 * Improvement - Autoselect first available slot for next 12 months. 2017.11.20 - version 3.5.4 * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/19/switch-capacity-to-official-woocommerce * Improvement - Added 'wc_availability_rules_priority' filter for modifying appointment rules level weight. * Improvement - Updated translations. * Fix - Display addon duration and extra appointment fields in admin at all times. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/283/auto-select-first-slot-not-working 2017.11.15 - version 3.5.3.1 * Improvement - Updated translations. * Fix - https://bookingwp.com/forums/topic/incorrect-remaining-places-message-missing-remaining-places-information/ 2017.11.14 - version 3.5.3 * Fix - https://bookingwp.com/forums/topic/incorrect-remaining-places-message-missing-remaining-places-information/ 2017.11.14 - version 3.5.2.1 * Fix - X-scroll issue with daily staff view in admin calendar 2017.11.14 - version 3.5.2 * Improvement - Updated calendar design in admin. * Improvement - Updated calendar design in frontend. * Fix - When multiple staff is scheduled at once, use max quantity of all combined. * Fix - Make sure CSS classes are accounted for even for disabled days on calendar. * Fix - 'schedule_fo_' transient cache not working properly, missing from and to dates. * Fix - Google calendar events don't remove staff slots, when -- No Preference -- is selected. 2017.11.11 - version 3.5.1 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/282/availability-with-staff-members-not 2017.11.07 - version 3.5.0 * Feature - Allow price overriding for all Appointments by adding equals operator in the costs range. * Improvement - Removed Inventory from Global availability rules to reduce confusion and improve usability. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/279/global-inventory-interfeers-with-staff * Improvement - Add new notice for plugin activation. * Improvement - Calendar page title. * Improvement - Updated translations. * Improvement - Improve error feedback on calendar timepicker. * Improvement - Update sanity check notices and convert them to warnings. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/281/capacity-and-capacity-max-tooltip-the-same * Fix - Staff dropdown should only display the costs related to the staff. * Fix - Prevent deleting products that have appointments associated with them. * Fix - "Scheduled By" column is empty if there's no email address specified for the customer. * Fix - Restrict Days not working when site is translated. * Fix - Incorrect remaining count on slots when staff overlap. * Fix - Calendar not defaulting to first available date with shared staff. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/280/product-capacity-acting-strange * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/216/wc-memberships-base-price-discounted-twice 2017.10.28 - version 3.4.9 * Fix - Missing slots, when no staff selected. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/276/the-status-bar-width-on-days-in-calendar * Fix - https://bookingwp.com/forums/topic/problem-with-last-one-update-3-4-7/ 2017.10.24 - version 3.4.8 * Improvement - Updated translations. * Fix - Calendar availability for appointments that end at midnight. * Fix - Calendar does not show schedule bar for staff not fully scheduled. * Fix - When no staff selected, available slots not shown. * Fix - https://bookingwp.com/forums/topic/problem-with-last-one-update-3-4-7/ * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/276/the-status-bar-width-on-days-in-calendar * Fix - https://bookingwp.com/forums/topic/integration-with-gravity-forms-product-add-ons/page/2/#post-146233 2017.10.21 - version 3.4.7 * Improvement - Removed compatibility for older version, where staff capacity was saved inside user edit screen. * Improvement - Big performance improvements, especially when staff is assigned to products. * Fix - https://bookingwp.com/forums/topic/integration-with-gravity-forms-product-add-ons/ * Fix - Calendar admin week view grid lines. * Fix - Fixed availability issues for multiple staff. 2017.10.19 - version 3.4.6 * Feature - Allow downloadable items with appointments. * Improvement - Added integration with "WooCommerce Print Invoices/Packing Lists" extension. Also compatible with free "WooCommerce PDF Invoices". * Improvement - To reduce confusion, replaced staff inventory placeholder with N/A. * Improvement - Make sure Availability and Staff product admin menu tabs are place just below General and Inventory. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/269/wrong-appointment-status-with-pos-plugin * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/270/conflict-with-activity-log-plugin * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/271/general-tab-on-variable-products-with * Fix - Division by zero notice. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/272/appointments-added-through-gcal-block-all * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/273/when-saving-appointment-in-backend 2017.10.12 - version 3.4.5 * Improvement - Remove ACF plugin's timepicker scripts. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/144/attach-ics-to-customer-order-complete * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/251/not-working-with-gravity-forms-add-ons * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/243/duplicate-appointments-with-wpml-in-the-my * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/252/woocommerce-multilingual-custom-pricing 2017.10.09 - version 3.4.4 * Improvement - Calendar view selection in admin saved and set to default automatically. * Improvement - Additional checks for staff existence. * Fix - Pagination of "My Appointments" for custom endpoints (other than "appointments") doesn't work. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/267/staff-notice-on-list-appointments * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/266/staff-members-cant-add-new-appointments * Fix - Uncaught Exception: Invalid product. 2017.10.03 - version 3.4.3 * Fix - PHP Fatal error: Uncaught Error: Call to a member function skip_status_transition_events() on null 2017.10.02 - version 3.4.2 * Improvement - Changed terminology from "Capacity" to "Inventory" before switching to WooCommerce default inventory system. * Improvement - Week selection in admin calendar's week view by datepicker. * Improvement - Updated translations. * Fix - Confirmation email sent twice. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/233/changing-order-status-from-complete-to * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/224/very-confusing-order-status 2017.09.30 - version 3.4.1 * Improvement - Updated translations. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/251/not-working-with-gravity-forms-add-ons * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/227/refunding-an-appointable-product-leaves 2017.09.29 - version 3.4.0 * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/184/view-appointments-by-week-in-backend * Improvement - Added link to staff profile inside admin calendar / appointment card. * Improvement - Pagination of "My Appointments". * Improvement - Switch order of operations for `status_transitioned_handler`. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/250/icon-position-issue * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/259/error-when-trying-to-delete-wocommerce * Fix - Full day appointments missing from Day view in admin calendar. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/260/woocommerce-order-appointment-displayphp * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/229/canelation-from-frontend-doesnt-remove * Fix - Customer cancelled appointments were not triggering cancellation emails. * Fix - Incorrect text domain for translation. * Fix - Appointments Calendar not functioning properly for RTL languages. * Fix - Random availability problem. * Fix - Calendar calculation wasn't taking into consideration days before actual appointment for duration of type days. * Fix - Data manipulation allows appointments outside of defined slots. * Fix - Orders with multiple cancelled appointments still show as "Completed". * Fix - PHP notice when adding appointable product that requires confirmation to the cart. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/262/capacity-count-in-custom-pricing-is-not * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/261/capcity-not-working-with-staff * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/264/email-triggered-everytime-confirmed * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/263/wrong-spaces-left-number * Fix - Appointment status was saved as 'pending' instead of 'pending-confirmation'. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/255/follow-ups-not-working-on-latest-version 2017.09.19 - version 3.3.3 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/256/duration-in-emails-is-wrong-in-332 * Fix - https://bookingwp.com/forums/topic/dates-greyed-out-urgent/ 2017.09.15 - version 3.3.2 * Fix - Division by zero error. 2017.09.14 - version 3.3.1 * Fix - Throwing JS errors for products with daily duration. 2017.09.14 - version 3.3.0 * Feature - New functionality to restrict the day an appointment can start on. * Improvement - Optimized loading times, much faster on all levels. * Improvement - Added filters to allow switching to date created for My Account > Appointments. * Improvement - Added wc_appointments_summary_list_date filter for wc_appointments_get_summary_list. * Improvement - Moved Appointment Display to templates for orders on both front-end and admin. * Improvement - Moved Appointment Summary list to templates for orders on both front-end and admin. * Improvement - Send confirmation email for manually created appointments without an order. * Improvement - Querystring for "time" now uses more readable format. Instead of "12:00", now "1200". * Improvement - Removed "Order again" button for appointment orders. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/244/wc-memberships-with-discount-100-not-taken * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/242/time-zone-problems * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/241/sms-notification-doesn-t-work-for * Fix - Admin calendar day view incorrect when times below 10am. * Fix - Appointments calendar on the backend doesn't respect time format in WordPress settings. * Fix - Appointments with orders created in admin had totals without taxes included. * Fix - Fatal error when using woocommerce_email_recipient_appointment_confirmed * Fix - Fatal if create_wc_appointment used to create appointment based on parent. * Fix - Hour based slots overlapping midnight marks next day as partially booked even though it doesn't affect any of the slots. * Fix - Refunded orders will update the Appointments status to Refunded. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/227/refunding-an-appointable-product-leaves * Fix - Today's availability rules were being ignored. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/246/issue-with-memberships-and-staff-extra * Fix - Updated price HTML display to correctly show additional costs. * Fix - Book button disabled on each price/slot calculation, prevents double appointment. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/251/not-working-with-gravity-forms-add-ons * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/248/lead-time-not-working-ok 2017.08.21 - version 3.2.9.1 * Improvement - Unavailable days show as available on calendar. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/238/weird-acting-when-duration-interval-is-55 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/239/appointment-reminders-being-triggered * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/221/latest-tc-update-46-does-not-work-with * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/218/timezone-check-for-reminder-emails 2017.08.17 - version 3.2.9 * Improvement - Book now button disabled until cost is calculated and availability checked. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/221/latest-tc-update-46-does-not-work-with * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/237/reminder-emails-not-sent 2017.08.16 - version 3.2.8 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/236/wc-memberships-not-working-ok * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/216/wc-memberships-base-price-discounted-twice * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/221/latest-tc-update-46-does-not-work-with * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/232/wrong-first-slot-with-combined-product-and * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/234/availability-rule-acting-weird 2017.07.31 - version 3.2.7 * Improvement - Double check if order has been created for the appointment. * Improvement - Overnight rules for Sunday now correctly span into Monday. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/230/fatal-error-on-the-wc-settings-emails-page * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/231/cant-edit-the-subject-and-header-email-new 2017.07.28 - version 3.2.6 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/228/my-account-appointments-throws-an-error * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/195/wrong-availability-with-time-range-date * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/208/monday-15-00-00-30-with-duration-30min-no 2017.07.26 - version 3.2.5 * Fix - Error 500 when using external object cache, such as Memcached. * Fix - Emails are triggered when saving an appointment and changes aren't made. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/222/no-preference-shows-no-slots-but-there-are * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/223/emails-sent-to-wrong-staff * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/226/connect-with-google-button-not-working * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/225/capacity-not-working-ok 2017.07.24 - version 3.2.4 * Improvement - Updated Product add-ons to version 2.9.0 * Fix - Update WC 3.x compatibilities when duplicating product. * Fix - Taxes not added when creating an appointment from admin. * Fix - Reminder and complete cron events not set if Appointment is created without an order from the backend. * Fix - Fatal error when appointments used with a cached objects. * Fix - Email ID was the same for customer and admin appointment cancelled email. * Fix - All day appointment option was being ignored on calendar after availability refactor. * Fix - Availability rules using Date Range calculation on the frontend. * Fix - "Connect with Google" does not save/update entries. * Fix - Availability rules with dates in the past should be ignored for performance reasons. * Fix - Add woocommerce_appointments_email_actions filter to allow additional Appointments emails. * Fix - Default price being used when price rules make price 0. * Fix - Incorrect date being checked when getting time slots vs availability rules. * Fix - Endless loop when auto completion of appointment when it has no order. 2017.07.19 - version 3.2.3 * Fix - Current day is not available, when lead time is less than 1 day. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/220/lead-time-set-to-1-hour-disables-whole-day * Fix - Removed support for recurring events with Google Calendar sync, due to crashes. https://bitbucket.org/bookingwp/woocommerce-appointments/issues/219/add-max-date-for-gcal-sync 2017.07.18 - version 3.2.2 * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/135/add-staff-and-add-ons-to-querystring * Improvement - Updated all translations. * Improvement - Added additional get_price checks for better external plugin compatibility. * Improvement - Updated WPML and added support for WPML multi-currency. 2017.07.15 - version 3.2.1 * Fix - Current day is not available in any case. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/185/cant-have-2-autoselect-products-on-the 2017.07.14 - version 3.2.0 * Improvement - Moved staff capacity from user edit screen to product edit screen. * Improvement - Removed availability capacity from staff/user edit screen, due to complexity. * Improvement - Simplified availability rule code checking. * Improvement - Addon duration missing for select add-on fields. * Improvement - Staff can also add products from other staff members, but can only edit products they created. * Improvement - Partially scheduled dates now show percentage remaining for selected days as well. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/216/wc-memberships-base-price-discounted-twice * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/209/error-with-wc-memberships * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/156/make-it-compatible-with-discouts-using * Fix - Assigning all staff at once produces mixed results. * Fix - Double check that queried appointments don't return empty array. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/207/unavailable-dates-show-as-bookable-on * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/214/fatal-error-on-staff-appointments-list * Fix - Delete database entries on uninstall only in case `WC_REMOVE_ALL_DATA` is true. * Fix - `/appointments/` account slug rewrite rules now stay put on permalink flush. * Fix - Staff product tab showing wrong icon. * Fix - Only sync Google Calendar if the integration is configured. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/215/staff-members-dont-see-any-appointments * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/217/lead-time-title-od-unavailable-days-is * Fix - Brought back filter "woocommerce_appointments_remind_before_time". https://bookingwp.com/forums/topic/has-the-filter-woocommerce_appointments_remind_before_time-been-removed/ * Fix - Show "From: xy" next to price, when staff with additional cost is assigned. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/202/order-total-is-empty-when-creating * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/194/cancelling-appointment-in-edit-appointment * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/211/emails-not-working-ok-when-appointment-is * Fix - Not showing all staff in admin select box, when required. 2017.06.29 - version 3.1.9 * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/205/add-a-filter-to-customr-details-meta-box * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/208/monday-15-00-00-30-with-duration-30min-no 2017.06.27 - version 3.1.8 * Improvement - Refactored and moved most DB queries to Data Store. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/201/calendar-in-admin-shows-sunday-as-first * Fix - Email templates did not display cell borders correctly. * Fix - Tweaked availability rules. * Fix - Missing customer phone for admin created appointments. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/198/add-shop-manager-and-admin-as * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/196/product-slect-not-working-if-signed-in-as * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/143/fix-process_staff_unavailability_rules 2017.06.22 - version 3.1.7 * Improvement - Calendar appointments in ASC order by start_date. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/193/notice-in-follow-up-emails * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/195/wrong-availability-with-time-range-date * Fix - Temporarily added https://bookingwp.com/forums/topic/order-notes-dont-seem-to-reflect-all-appointment-status-changes/#post-134484 2017.06.21 - version 3.1.6 * Improvement - When customer is a registered user, show user details before billing details. * Fix - Staff unavailability rules not merged correctly for Time range (date range) rules. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/182/appointment-after-midnight-doesnt-take * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/183/availability-rule-from-20-00-to-06-00 * Fix - Custom price label text. Deleted no payment for custom price label. * Fix - Order_by argument for my_appointments was wrong, was orderby instead of order_by. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/188/staff-name-is-blank-in-follow-ups * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/175/create-appointment-from-backend-doesnt 2017.06.07 - version 3.1.5 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/180/product-capacity-doesnt-work * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/178/slots-left-wrong-when-no-preference-is 2017.06.04 - version 3.1.4 * Fix - Slots that extend over midnight are not able to schedule. 2017.06.04 - version 3.1.3 * Fix - Availability rules for next day not working correctly. * Fix - Custom pricing for base cost and slot cost fixes. * Fix - Removed division and multiplier for custom slot cost as you can't multiply and divide zero. 2017.06.02 - version 3.1.2 * Fix - Midnight availability rules not working correctly. 2017.06.01 - version 3.1.1 * Improvement - All availability rules now apply for all slots * Improvement - Global capacity now overrides product capacity for all products * Improvement - Deprecated days global availability rule set by default in older plugin versions * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/174/sale-price-not-displayed-correctly 2017.05.30 - version 3.1.0 * Feature - Added customizer option to edit default color scheme * Feature - Deep WC Product Vendors integration https://bitbucket.org/bookingwp/woocommerce-appointments/issues/92/add-better-woocommerce-product-vendors * Improvement - Updated translations * Fix - Could not override myaccount/appointments.php template * Fix - Staff checking across multiple products. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/153/padding-not-taken-into-account-over * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/169/capacity-in-availability-rules-is-ignored 2017.05.25 - version 3.0.9 * Improvement - .ics file now attached to all email notifications, except cancelled ones: https://bitbucket.org/bookingwp/woocommerce-appointments/issues/144/attach-ics-to-customer-order-complete * Fix - Capacity issues, defined with availability rules * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/168/staff-members-can-see-all-appointment-in 2017.05.23 - version 3.0.8 * Improvement - More CRUD queries * Improvement - Refactored functions, controllers and rule manager * Improvement - "Cash on delivery" payments trigger reminders and admin/staff notifications * Fix - Conflict with WC Product Add-ons plugin * Fix - Staff availability rules * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/172/availability-rules-override-to-much * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/171/changing-status-of-order-falls-into-a-loop 2017.05.16 - version 3.0.7 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/137/product-add-on-duration-multiplier-does 2017.05.16 - version 3.0.6 * Feature - Set customer status to "No Show" when appointment is past due and is not paid for * Fix - Order ajax search now works when editing appointment * Fix - Query for appointments didn't work correctly * Fix - Calendar capacity was incorrect, when no staff was assigned * Fix - Google calendar sync product name missing * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/166/hiding-duration-info-with * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/165/remove-view-my-appointments-for-guests 2017.05.12 - version 3.0.5 * Feature - Add-on fields inside Google Calendar sync * Feature - On certain cases not syncing to Google calendar * Fix - Trashing an appointment will no longer trash its order if order has other items. * Fix - Compatibility issue with Product Add-Ons integrations. 2017.05.09 - version 3.0.4 * Feature - Added add-ons to appointment edit screen in admin * Fix - Fixed autoselect for date/time 2017.05.06 - version 3.0.3 * Fix - Fixed Google calendar sync on appointments list 2017.05.05 - version 3.0.2 * Fix - https://bookingwp.com/forums/topic/plugin-doesnt-show-pricing/ 2017.05.04 - version 3.0.1 * Improvement - My account page displays better appointment data 2017.05.04 - version 3.0.0 * Feature - WooCommerce 3.0 full CRUD compatibility * Improvement - Better date/time rendering with duration always visible * Improvement - Update translations * Fix - The post_status field from submitdiv meta box causing unexpected transition appointment status events. * Fix - https://bookingwp.com/forums/topic/quick-edit-in-all-posts-missing/ 2017.04.06 - version 2.6.3 * Feature - Added Spanish translation es_ES * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/pull-requests/28/add-data-object-to-filter-for-gcal-add/diff * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/pull-requests/29/additional-past-and-upcoming-classes-for/diff * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/pull-requests/25/fix-for-datepicker-not-showing-correct/diff * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/pull-requests/30/fix-reference-to-customer-name-when-added/diff * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/pull-requests/27/fix-for-issue-153-padding-not-taken-into/diff * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/pull-requests/23/show-the-date-in-format-when-selected/diff 2017.03.02 - version 2.6.2 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/pull-requests/21/format-single-day-view-date-by-general * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/pull-requests/22/urgent-fix-administration-calendar-query/diff 2017.03.01 - version 2.6.1 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/pull-requests/20/urgent-fix-to-use-or-instead-of-and-when 2017.02.26 - version 2.6.0 * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/23/add-possibility-to-select-date-and-time * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/110/number-of-appointments-not-corresponding * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/120/add-php-code-sniffer-and-wpcs-to * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/129/follow-up-plugin-integration-missing * Improvement - ALL PHP files linted and improved for better readability * Improvement - Updated all languages * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/119/remove-first-ajax-request-on-cost * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/123/missing-slot-for-24-hour-business * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/125/display-duration-as-weeks-instead-of-days * Fix - Issue with support for both padded appointments and 24/7 appointments (existing appointments query fix) 2017.02.21 - version 2.5.2 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/127/padding-time-is-not-taken-into-account * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/130/timezone-issues-with-different-date-format 2017.01.23 - version 2.5.1 * Improvement - Linted all PHP files * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/117/next-slot-also-unavailable-when-duration 2017.01.22 - version 2.5.0 * Improvement - Better automatic updates for the plugin. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/102/autoselect-doesnt-work-if-current-month * Fix - Better slot availability checking, when multiple staff is present. Added missing slots. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/112/css-rules-for-global-availablity 2017.01.20 - version 2.4.9 * Improvement - Added filter for time slots: 'woocommerce_appointments_time_slots_html'. * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/28/deleting-staff-should-update-products * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/100/date-time-editing-for-approved-confirmed * Improvement - Updated translations. * Fix - Fixed Google Calendar response_move variable notice. * Fix - Google calndar events not synced into existing products correctly. 2017.01.19 - version 2.4.8 * Improvement - Added missing appointment_id variable to Follow Ups plugin integration. * Fix - Only schedule reminder for future appointments. * Fix - Midnight being 1 minute short is now fixed. * Fix - Datetime checking now works for the full appointment duration and not just intervals. * Fix - Added missing $minutes_not_available variable for checking scheduled out time. * Fix - Saving staff clears transients correctly. 2017.01.06 - version 2.4.7 * Fix - Notices on comflict not working correctly. * Fix - Clearing transients on staff deleting on product edit screen. * Fix - Removed unused Appointment Notification email template to reduce confusion. 2017.01.04 - version 2.4.6 * Feature - Notice on appointment conflicts in admin * Improvement - Deprecated 'woocommerce_appointments_appointment_cost_string' filter and replaced it with 'woocommerce_appointments_appointment_cost_html' for the whole ajax price HTML * Improvement - Date/time editing for approved/confirmed appointment should reschedule reminders. * Improvement - Better organized external integration classes * Fix - Frontend CSS fixes for various themes * Fix - Added plugin version number to all JS files for caching issues. * Fix - Clearing transients on staff saving on product edit screen. * Fix - https://bookingwp.com/forums/topic/not-sending-appointment-confirmation-email-and-error/ 2016.12.26 - version 2.4.5 * Fix - Minute slots shows not available when paired with time range with date rule type. * Fix - Blogname not shown when cancelling appointments via bulk order. * Fix - Availability rules ignored for hour duration type in certain configurations. * Fix - Form fields don't save due to non-indexed form arrays. * Fix - Fully scheduled days showing up as partially scheduled days and can be over scheduled. * Fix - Product add on not calculating on when the duration unit was set to day. 2016.12.23 - version 2.4.4 * Improvement - Updated Product add-ons to version 2.7.26 * Improvement - Dropped some support for WooCommerce 2.1 or older * Fix - Some date format might be causing unintended message: "The earliest appointment possible is currently..." 2016.12.14 - version 2.4.3 * Fix - https://bookingwp.com/forums/topic/appointment-confirmation-not-working-after-new-version-update-yesterday/ * Fix - https://bookingwp.com/forums/topic/only-one-slot-available-for-appointment/ 2016.12.09 - version 2.4.2 * Fix - Availability rules issues. * Improvement - Updated translations 2016.12.07 - version 2.4.1 * Fix - PHP error when adding appointment in admin. 2016.12.07 - version 2.4.0 * Feature - Better support for Deposits partialy paid status. * Feature - Full compatibitily with Follow Up Emails extensions 5.0 * Improvement - Dropped support for WooCommerce 2.2 or older * Improvement - Improved cutomer metabox * Fix - "Time Range (date range)" availability rule now works as it should * Fix - Different rule types couldn't be used on the same product as priorities were not respected across types. * Fix - Unavailable slots showed when rule time range goes beyond midnight (e.g. 9:30 PM - 06:30 AM ) * Fix - Date with time showed days as not available when only a few hours was set is not available. * Fix - Multiple appointments per order cancellation emails polluted email data. 2016.11.16 - version 2.3.0 * Improvement - Filter `woocommerce_appointments_get_posted_data` to filter the data within an ajax request. * Improvement - Filter `woocommerce_appointment_is_scheduled_on_day`. * Improvement - Appointment status strings can be translated. * Improvement - Refactored appointment product query, broken into several parts * Improvement - Better code quality * Improvement - Updated translations * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/98/customer-status-on-completed-appointment * Fix - Cache is not emptying properly. * Fix - In cart appointments not showing unavailable in calendar. * Fix - Appointment spanning into multi-day shows 0 slots available. * Fix - Confirmation email sent with wrong dates when creating and changing an appointment date/time in admin. 2016.11.02 - version 2.2.9 * Feature - Set up advanced caching functions for implementation with one of next updates * Improvement - Updated Product add-ons to 2.7.25 * Fix - Staff capacity re-fix 2016.10.25 - version 2.2.8 * Improvement - Minor performance upgrade * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/93/synching-repeated-events-from-google * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/83/hide-others-appointments-with-staff-role * Fix - Staff capacity 2016.10.19 - version 2.2.7 * Feature - Introduced staff capacity * Improvement - Updated all translations * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/90/appointment-status-bug * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/84/multiply-duration-with-add-on-multiplier * Fix - Fixed overflow issue for calendar in admin, where appointments would stretch far right 2016.10.14 - version 2.2.6 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/89/bug-assigning-managing-staff 2016.10.14 - version 2.2.5 * Improvement - Appointment filtering by staf and/or product available * Fix - No more duplicates from Google Calendar sync to multiple sites * Fix - Appointment filtering now works for date and status inside appointment list table 2016.10.13 - version 2.2.4 * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/73/auto-select-first-available-time-slot * Improvement - Slightly optimized code for better performance * Improvement - Added filter 'woocommerce_appointments_convert_to_hours' * Improvement - Unavailable times don't show up for multiple staff assigned any more * Improvement - Better day availability detection for multi-day duration 2016.10.05 - version 2.2.3 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/83/hide-others-appointments-with-staff-role 2016.10.05 - version 2.2.2 * Fix - Slots scheduled on Google Calendar not greyed out on calendar 2016.10.04 - version 2.2.1 * Improvement - Updated Product add-ons to 2.7.24 * Fix - Live Google Calendar sync now connects to correct resource ID * Fix - Syncing all statuses now possible 2016.10.03 - version 2.2.0 * Feature - Calendar now has option to see all staff in columns for Day View * Feature - Google Calendar v2 * Feature - Ability to define minimum and maximum quantity required for schduling * Improvement - Calendar dilog box has better styling and customer avatars are enabled * Improvement - Day View has been improved and allows for better display * Improvement - Simpler query for appointable products * Improvement - Twilio SMS now better integrated * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/80/settings-page 2016.09.16 - version 2.1.6 * Improvement - Added filter 'woocommerce_appointments_get_staff_assignment' * Improvement - Product Add-ons: Duration label can be hidden for customers * Improvement - Product Add-ons: Price label can be hidden for customers * Fix - Better integration with plugin WooCommerce Twilio SMS Notification 2016.09.14 - version 2.1.5 * Improvement - Updated Product add-ons to 2.7.23 * Fix - https://bookingwp.com/forums/topic/received-3-email-when-appointment-status-updated/ * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/74/appointment-edit-with-shop-staff-role 2016.09.05 - version 2.1.4 * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/70/staff-has-separated-view-for-all * Improvement - Added much better WPML + WooCommerce Multilingual support * Improvement - Priority for availability is now on product level: Product < Staff < Global * Improvement - When duration is set to multiple days, all days available for scheduling are highlighted, not just start date * Improvement - Updated My Appointments template page under My Account !IMPORTANT Save permalinks to take into account updated structure * Fix - Renamed main plugin filename. * Fix - Email recipients not showing "customer" in email settings. * Improvement - Updated all translations 2016.09.01 - version 2.1.3 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/68/staff-date-range-time-range-date-range-bug * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/71/order-status-notes 2016.08.31 - version 2.1.2 * Fix - https://bookingwp.com/forums/topic/wrong-message/ * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/64/malfunctioning-appointments-nonsense * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/65/bug-with-staff-availability-rules * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/68/staff-date-range-time-range-date-range-bug * Fix - Fatal error: Uncaught Error: Class 'WC_Appointments_Admin' not found * Improvement - Updating appointment status manually now triggers events like reminder emails etc. * Improvement - Deprecated filter 'woocommerce_appointments_remind_before_days' and replaced it with 'woocommerce_appointments_remind_before_time' * Improvement - New filter 'woocommerce_appointments_remind_before_time' now allows you to specify '1 hour' or '1 day' etc. * Improvement - When staff is changed and autoselected date/time is on, don't reload the whole calendar 2016.08.19 - version 2.1.1 * Fix - Email templates now copied to woocommerce/ folder for overriding 2016.08.18 - version 2.1.0 * Improvement - Moved all template overrides from /woocommerce-appointments/ to core /woocommerce/ theme folder * Improvement - Support core template overrides scan via 'woocommerce_template_overrides_scan_paths'. * Improvement - Introduced better template versioning, baked into core WooCommerce system * Improvement - Optimized DB query for existing appointment * Improvement - Updated all translations 2016.08.16 - version 2.0.1 * Improvement - Admin calendar with miultiple staff assigned * Fix - Gravity Forms Product Add-ons now works with newer versions * Fix - Global Add-ons now work with duration as well * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/60/multiple-staff-will-not-appear-on-edit 2016.08.12 - version 2.0.0 * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/22/assign-multiple-staff-members-to-same * Feature - Added French translation * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/57/add-on-duration-for-multiple-days * Improvement - Updated all translations * Improvement - Avaialbility rules and capacity now work across board without any known glitches * Improvement - Updated all email templates !IMPORTANT if you edited email templates * Improvement - Product and staff now separated in admin * Improvement - Padding is now simplified and works much smoother, when padding times are evalauted for multiple product for same staff * Improvement - Added template versioning for better future compatibility * Fix - https://bookingwp.com/forums/topic/padding-time-after-doesnt-work/ * Fix - Capacity now correctly configured for date and time. Only product capacity is taken, no multiplication by staff. * Fix - Staff notification emails now work 2016.07.20 - version 1.9.15 * Improvement - Updated German translation 2016.07.19 - version 1.9.14 * Improvement - Updated translations and added RTL support 2016.07.19 - version 1.9.13 * Feature - Added German translation * Improvement - Updated Product Add-ons to v2.7.21 * Improvement - Appointments with price set to zero are now labled as Free! * Improvement - Transitioned to system fonts on all levels * Improvement - Updated Hebrew translation * Improvement - Updated Dutch translation * Fix - Order status not being prefixed in db. * Fix - Remove heavy appointment object cache from being saved to db causing performance issue. * Fix - When staff is not enabled, default it to customer assignment. * Fix - Partially scheduled days were not showing on the calendar for duration minute and hours. * Add - Filter to account for different country calendar formats 'woocommerce_appointments_mdy_format'. 2016.07.18 - version 1.9.12 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/55/new-bug-in-1911 2016.07.18 - version 1.9.11 * Improvement - Fixed CRM Integration (filter instead of action) New features: display customer & order notes as tooltips. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/54/appointment-reminder-don-t-get-send * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/53/appointment-guest * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/52/php-error 2016.07.08 - version 1.9.10 * Improvement - WordPress 4.6 compatibility * Improvement - Date picker now unified across admin interface and automatically translated for WP 4.6+ * Improvement - Theme compatibility fixes for calendar on front-end * Fix - Admin scripts for datepicker now called correctly * Fix - Automatic staff assignment on empty staff 2016.07.07 - version 1.9.9 * Improvement - Styled datepicker in admin * Improvement - Styled admin calendar * Improvement - Moved all-day appointment to top * Improvement - Removed jQuery UI style from front-end * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/47/serious-availability-bug 2016.07.04 - version 1.9.8 * Improvement - Moved appointments in My account to separate tab (WC 2.6+ feature) * Improvement - Increased staff avatars size to 48px for retina displays * Improvement - Further integration with http://codecanyon.net/item/woocommerce-point-of-sale-pos/7869665 * Improvement - Better appointment editing screen * Improvement - Better day view calendar * Improvement - Updated Select2 library to v4.0.3 * Improvement - When staff count is less than 6, search is disabled * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/47/serious-availability-bug * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/21/provider-no-preference-today 2016.06.23 - version 1.9.7.2 * Fix - Unavailable dates displayed on calendar 2016.06.23 - version 1.9.7.1 * Fix - PHP error 2016.06.23 - version 1.9.7 * Fix - Staff select box now displays correctly with increased z-index * Fix - Edit staff link in admin is now fully clickable * Fix - Auto-selecting first available day doesn't trigger automatically any more * Fix - Availability rules work for time range with date correctly 2016.06.22 - version 1.9.6 * Improvement - Staff availability drops to default if no availability is set up. * Improvement - Only paid and confirmed appointments are considered for occupied date/time slots * Add - Filter wc_appointments_product_get_available_slots * Fix - WC 2.6 request confirmation showing even when no appointable product in cart. * Fix - Google Calendar missign $wpdb variable * Fix - Unable to pay for confirmed appointment if coupon reduces price. * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/29/customer-billing-shipping-address 2016.06.17 - version 1.9.5 * Fix - Site crash due to unregistered is_plugin_active() function 2016.06.17 - version 1.9.4.1 * Fix - https://bookingwp.com/forums/topic/how-to-disable-checkout-checkbox-check-appointment-availability/ 2016.06.17 - version 1.9.4 * Feature - Option to Auto-select first available day * Improvement - Reduced staff table queries to 1 transient * Improvement - Significant loading time reduction * Improvement - Updated Product Add-ons to v2.7.19 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/35/delete-appointment-from-postphp * Fix - Local time conversion now works the same across all devices 2016.06.15 - version 1.9.3 * Feature - Integration with http://codecanyon.net/item/woocommerce-point-of-sale-pos/7869665 * Feature - Integration with http://codecanyon.net/item/woocommerce-customer-relationship-manager/5712695 * Improvement - Text "Book Appointment" is now "Book Now" and "Book Now" is now only "Book" * Improvement - Slightly faster appointment form loading time * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/43/staff-members-see-only-their-own * Fix - Staff filtering in admin now works as it should * Fix - Cancelled appointments slots are available again * Fix - Don't count padding time into interval * Fix - Cart item quantity can't be modified any more in any theme (Avada fix) * Fix - All admin tooltips are now generalized with wc_help_tip() function 2016.06.08 - version 1.9.2 * Improvement - Appointment form set to 100% width for wider theme compatibility * Improvement - "Appointment cost" text set to just "Cost" * Improvement - Removed Busy filter option as practically nobody used it * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/36/edit-appointment-format-of-date * Fix - Integration with latest version of "WooCommerce TM Extra Product Options" plugin 2016.06.06 - version 1.9.1 * Improvement - Updated Product Add-ons to v2.7.18 * Improvement - admin calendar works better 2016.05.30 - version 1.9.0 * Feature - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/8/woothemes-twilio-sms-integration * Improvement - admin CSS structure * Improvement - admin calendar time format now in line with site's time format 2016.05.25 - version 1.8.9 * Feature - Times are converted to local times of visitors * Improvement - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/16/display-cancelled-appointments-in-calendar * Fix - Updating appointments with no orders PHP notice 2016.05.23 - version 1.8.8 * Improvement - Admin calendar view dialog now includes appointable product title 2016.05.21 - version 1.8.7 * Feature - Admin calendar appointment can be viewed in a dialog for better overview with basic actions * Improvement - Improvement admin calendar view * Improvement - Appointment reminder email now shows reminder for today if set so * Fix - Frontend CSS fix for addons spacing * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/33/staff-capacity-mimicking-pre-version-182 2016.05.08 - version 1.8.6 * Improvement - Replaced all date and time format with native WooCommerce functions * Improvement - Added current time indicator for day view, when viewing current day * Improvement - Improvement admin calendar view * Fix - https://bookingwp.com/forums/topic/php-error-when-saving-appointment/ 2016.05.04 - version 1.8.5 * Improvement - Frontend calendar design looks slightly better * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/27/memory-issue-with-scheduled_slots-array * Fix - Removed duplicated post type registration * Fix - Warning on single product page caused by appointment objects transient stored as empty string. The reason for this is when false is stored via set_transient, it will return empty string when retrieved via get_transient. * Fix - Plugin files loaded after all other plugins for better compatibility * Fix - Appointment editing now syncs with order correctly, including customer ID 2016.04.22 - version 1.8.4 * Improvement - Cache appointment objects in appointment's controller. * Improvement - Google calendar sync now works better for all statuses. Sync appointment when appointment is edited from edit appointment screen. * Improvement - Use WC logging mechanism, especially when appointment is added to or removed from cart. * Fix - Make sure appointment costs that span beyond end of the year are supported. * Fix - Staff availability is now displayed correctly. * Fix - Add a false value if order_ids return empty during search. This fixes issue of SQL syntax error when searching in Appointments. * Fix - Limit status changes to only affect qualifying appointments. This should prevents status updated to 'was-in-cart' issue. * Fix - Set default staff availability quantity to 1 which fixes issue of a product with staff is not appointable. * Fix - Construct Date-object from UTC to ignore browser's TZ and incorrect calculated duration on particular timezones. * Fix - Check automatic staff assignments on each date to make sure a fully scheduled date is not available instead of partially scheduled. * Fix - Use admin_url instead of WC()->ajax_url() for ajax_url in class-wc-appointment-form.php WC()->ajax_url() uses relative scheme that might cause if fronted site is SSL'ed. * Fix - Reset tags on email body before each trigger which fixes tag placeholders. were not substituted properly. * Fix - Removed deprecated args causing notices displayed in confirmation email. 2016.04.19 - version 1.8.3 * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/11/admin-calendar-bug 2016.04.18 - version 1.8.2 * Feature - Added Hebrew language support * Improvement - Added 'woocommerce_appointments_calendar_view' filter that allows setting default calendar view to 'day' * Improvement - Updated Product add-ons to 2.7.17 * Fix - Addon total now displays again * Fix - https://bookingwp.com/forums/topic/time-slot-gone-after-1-booking-but-capacity-is-80/ * Fix - Qty display for appointments in admin 2016.03.30 - version 1.8.1 * Improvement - Product Add-ons intergration updated to 2.7.16 * Fix - Capacity checking for daily appointments * Fix - https://bitbucket.org/bookingwp/woocommerce-appointments/issues/1/wrong-z-index-lightbox-and-select-input * Improvement - Select2 library updated from RC1 to 4.0.2 * Improvement - Linted all JS files 2016.03.25 - version 1.8.0 * Improvement - Added option for quantity inside Add appointment in admin screen * Improvement - Localized admin calendar inside appointment edit screen * Improvement - Appointments statuses now available for translation * Improvement - Color palette resembles that from latest WooCommerce version * Feature - Pricing rule for quantity scheduled * Feature - Added support for padding days, not just padding hours * Experimental - Show discounts for each day in calendar with 'add_theme_support( 'woocomerce-appointments-show-discounted-slots' );' added to your theme * Fix - Appointment with guest checkouts now list 'Guest' on the list of appointments 2016.03.22 - version 1.7.9 * Fix - Undefined notice for global availability settings * Fix - Availability rule order now correct global > product > staff * Fix - Previous day was highlighted * Fix - Dates that are not available are now disabled * Improvement - Appointable product page load speed increased * Improvement - Add-on price symbol now wrapped in span with class name "amount-symbol" * Feature - Allow multiple appointments per staff at one time 2016.02.29 - version 1.7.8 * Fix - https://bookingwp.com/forums/topic/admin-calendar-tooltips-are-gone-with-last-update/ 2016.02.27 - version 1.7.7 * Feature - Staff notification emails * Improvement - Added margin below email notification table for better styling 2016.02.27 - version 1.7.6 * Improvement - Calendar font now inherits body font * Improvement - Calendar day columns now have the same width * Improvement - Select2 library updated to 4.0.2-RC1 2016.02.24 - version 1.7.5 * Fix - PHP Notice: Trying to get property of non-object in \\includes\\class-wc-appointment.php on line 566 * Fix - PHP Notice: Undefined variable: values in \\includes\\integrations\\class-wc-appointments-integration-addons.php on line 98 2016.02.24 - version 1.7.4 * Fix - https://bookingwp.com/forums/topic/error-message-at-cart/ * Fix - Overrides Bookly absolute calendar positioning: https://bookingwp.com/forums/topic/divi-theme-not-showing-good-calendar-in-products-page/ * Fix - https://bookingwp.com/forums/topic/add-ons-are-not-being-added-to-the-order-item-list-properly/ 2016.02.17 - version 1.7.3 * Fix - Scheduled multiple quantity is now correctly calculated in 2016.02.12 - version 1.7.2 * Feature - Select custom time intervals independently from duration * Tweak - Cancel time is now by default 1 day prior to appointment instead of 1 month * Fix - Adding appointment in now shows the calculated price 2016.02.12 - version 1.7.1 * Fix - Sale price display error * Fix - Translation of remaining slots for scheduling 2016.02.11 - version 1.7.0 * Feature - Customer can now schedule multiple appointments at once * Tweak - Add-ons cost now displayed with a plus + sign prefix * Tweak - jQuery: deprecated size() replaced with length() * Tweak - Updated translations * Tweak - Add-ons multipled with quantity scheduled * Fix - gCal sync error on appointment removal fixed * Fix - Appointment editing in admin now correctly synced with corresponding Order 2016.02.09 - version 1.6.2 * Tweak - Added more WPML support * Tweak - New Appointments specific add-on section under WooCommerce > Add-ons. * Tweak - Show a notice when viewing an appointment if it's add-on plugin no longer is installed. * Fix - Prevent the Duration input field from displaying on non appointment products when using the product add-ons extension. * Fix - Prevent start times that end after date times from showing up when using padding times. * Fix - Appointment in "My Account" not created with Confirmation Requried Appointment + New User account * Fix - Missing ending double quotes in order note of appointment status transition * Fix - Use full unit 'hour' when using date/time str in strtotime * Fix - Removed a bug with cost calculation that resulted in PHP warning 2016.02.04 - version 1.6.1 * Fix - Price wasn't calculated correctly for Staff, when pricing rules were empty 2016.02.03 - version 1.6.0 * Feature - Custom pricing rule * Feature - Additional price per staff * Improvement - Price calculations on all product levels * Improvement - Display FROM label before price, when additional costs are applied * Tweak - Staff capacity overrides appointment capacity * Tweak - Staff is set as appointment author, so you can filter capabilities correctly * Fix - No preference for staff now selects only available staff * Fix - Changing staff on scheduling form now reloads the time slots 2016.01.28 - version 1.5.4 * Improvement - Updated Add-ons to version 2.7.15 * Tweak - Sync appointments without orders (manually created appointments) to Google Calendar. * Tweak - Humanized order status in order column of appointments list. * Fix - If the new staff input is canceled, the staff input area will no longer be blocked. * Fix - Format the datetime form based on site language (matches behavior for day form). * Fix - Fix for possible availability problems using time range slots. * Fix - Prevent extra border from showing on time slots when using TwentySixteen as your theme. * Fix - Save the correct (appointment, not order) ID when saving appointment details on the admin screen. 2016.01.27 - version 1.5.3 * Feature - Ability to check availability rules against starting slot in range only 2016.01.26 - version 1.5.2 * Feature - Full integration with 'WooCommerce Follow Up Emails' extension * Tweak - Display of appointment customer in admin 2016.01.20 - version 1.5.1 * Improvement - Updated Add-ons to version 2.7.14 * Fix - Staff access to their schedule * Tweak - Some WooCommerce 2.5 compatibility fixes 2016.01.15 - version 1.5.0 * Feature - Capacity can be overriden on availability rule level, great for classes * Tweak - When manually creating appointments that either have no order or are attached to an existing order, the status will now default to "confirmed" instead of "pending confirmation". * Tweak - Adding staff now more stramlined * Improvement - Deprecated time range on specific date and replaced with time range with date range * Improvement - Highlighted all selected day if appointment lasts for more than 1 day * Improvement - Not messing with WooCommerce pricing any more. Selecting price label doesn't set price to zero. * Fix - Fix ranges on non-product rules. 2015.12.23 - version 1.4.6 * Fix - Capacity is now independent from staff count * Tweak - Added 'woocommerce_appointments_get_posted_data' filter * Tweak - Added 'woocommerce_appointments_order_item_status' filter * Feature - Full WPML compatibility 2015.12.23 - version 1.4.5 * Fix - Price including tax displayed correctly * Tweak - Zero total in cart should avoid cache, temporarily disabled hiding price, when zero * Tweak - Updated Select2 script to 4.0.1 * Feature - Integration with free plugin "WooCommerce Product Price Based on Countries" * Feature - Integration with free plugin "TM Extra Product Options" 2015.12.17 - version 1.4.4 * Tweak - New filter added: 'woocommerce_appointments_gcal_sync_statuses' 2015.12.17 - version 1.4.3 * Tweak - New filter added: 'woocommerce_before_appointment_form_output' * Tweak - WooCommerce 2.5+ compatibility * Fix - Email reminders not looped any more * Fix - Email reminders now sent on paid appointment status only 2015.12.08 - version 1.4.2 * Fix - Add-ons syntax error 2015.12.08 - version 1.4.1 * Fix - Calendar day names localization * Fix - Product Add-ons localization is now merged with "woocommercea-appointments" text-string 2015.12.05 - version 1.4.0 * Tweak - Better UI for adding appointments in admin * Tweak - Integrated product add-ons, when adding appointments in admin * Tweak - Add-ons displayed after available time slot is selected * Tweak - Add-ons now show extra duration next to each addon label * Feature - Appointments by day - can be scheduled for multiple days at a time. 2015.12.01 - version 1.3.1 * Tweak - first day of week also applies to admin calendar picker 2015.12.01 - version 1.3.0 * Tweak - New filter to change custom appointment labels. * Fix - Rules ending at midnight will now properly be parsed. * Fix - Google Calendar events now properly include the correct end date. * Fix - Slots smaller than 30 minute chunks will no longer get cut off on the admin calendar. * Fix - Prevent the partial scheduled indicator from sometimes showing on a previous day to a day with appointments. * Fix - If there are 0 time slots left, make sure not to show the slot at all. * Fix - Fix a bug with hours spanning days that can potentially show (still unschedulable) slots on other days * Feature - Time based appointments can now extend into the next day. * Feature - Rules can now have priorities set to create custom availability schedules. * Tweak - Our "partially scheduled" indicator now works for day slots with multiple spots. * Tweak - Tooltips have been added on the appointment calendar to explain what each color means. * Tweak - New get_wc_appointment_statuses() to return an array of appointment statuses. * Tweak - Use wc_date_format/wc_time_format instead of hard-coded format strings for default date & time formats. * Fix - Show days as available if time based rules say so. * Fix - Fatal error that occurs when setting an appointment's scheduled product to N/A. * Fix - Associate appointment details with an order, even if the appointment and order are created separately. * Fix - Only send appointment cancelation emails for appointments and not orders. * Fix - Next/Previous tooltip text can now be translated. * Tweak - Updated Product Add-ons to 2.7.13 * Fix - Capacity not showing correct number 2015.11.09 - version 1.2.4 * Feature - added shortcode 'appointment_form' * Improvement - Better price display with label instead of cost * Improvement - Removed any cost mention, when cart/order total is zero * Fix - appointment form design now more consistent * Fix - time range with specific date now works correctly (leading zero not added for months and days) 2015.10.15 - version 1.2.3 * Fix - wc_appointment_pretty_addon_duration functions definition * Fix - Product Add-ons assests linked correctly * Fix - availability error 2015.10.15 - version 1.2.2 * Improvement - Better price display with sale price * Fix - Price label display 2015.10.15 - version 1.2.1 * Fix - Availability for Time range (specific date) now works, when no other rule is active 2015.10.14 - version 1.2.0 * Feature - When duration longer than 120 minutes it gets broken into hours and minutes * Improvement - Updated WooCommerce Product Add-ons to 2.7.10 * Improvement - Front-end classes now fire inside $GLOBALS[] variable * Improvement - Translations can now be handled inside WP languages directory * Improvement - Replaced WC deprecated functions * Fix - Cancelled appointment staff member * Fix - Select2 removed from datetime-picker.php template * Fix - Padding time now assinged correctly 2015.09.07 - version 1.1.0 * Fix - Clear transients after an order is canceled by a user * Fix - Show an error message if an invalid date is entered * Fix - Fatal error that sometimes occurs when canceling a "requires confirmation" appointment * Fix - Search now correctly pulls out appointments when you search for customer info * Fix - Correctly calculate the quantity of spots needed in create_wc_appointment if the multiplier is set to yes & multiple persons are appointment 2015.09.01 - version 1.0.0 * First Release.