=== WooCommerce Free Gift Coupons === 2023.01.26 - version 3.6.0 * Update: Tested up to WooCommerce 8.4.0. * New: Prelimary support for variable gifts in cart block. For now it will re-direct to the single product page. * New: Declare cart/checkout block support. * Fix: Much stricter add to cart validation on gift items, esp for variations with some attributes pre-configured but "Any" value allowed for other attributes. 2023.12.11 - version 3.5.0 * IMPORTANT: Requires WC 3.6.0+. * Update: Tested up to WooCommerce 8.2.0. * Fix: Update all templates for safer string escaping. * Fix: Remove script that interferes with other Backcourt brand plugins' behavior in cart block. 2023.07.11 - version 3.4.5 * Fix: Misspelling of update_option() 2023.07.11 - version 3.4.4 * Fix: Switch to `update_option` on shutdown hook to save notices resolving issues with caching plugins. 2023.07.03 - version 3.4.3 * Update: Tested up to WooCommerce 7.8.0. * Fix: Use `registerCheckoutFilters` graduated filter in Blocks plugin. #117. 2023.01.12 - version 3.4.2 * Fix: Prevent display of All Products for Subscriptions' radio subscription schemes on free gifts in cart. #115. 2023.01.04 - version 3.4.1 * Fix: Stop enqueing checkout-blocks.css which doesn't yet exist. * Fix - Fixed a fatal error that was triggered when using PHP v8 and using Cart/Checkout Blocks. 2023.01.03 - version 3.4.0 * Update: Tested against WooCommerce 7.3.0. * New: Initial support for Simple Product gifts in WooCommerce Cart/Checkout blocks. * New: Support for auto-adding a free gift when coupon applied in Admin. (Requires: WooCommerce 7.3) 2022.10.19 - version 3.3.5 * Fix: Compatibility with Custom Order Tables. 2022.10.18 - version 3.3.4 * Update: Tested up to WooCommerce 7.0. * Tweak - Declared compatibility with the new Custom Order Tables. * Fix: Pass additional cart key parameter to sync functions to reduce possibility of undefined notices. 2022.05.18 - version 3.3.3 * Update: Tested against WooCommerce 6.5.0. * Fix: Fatal Error in update routine, call "Call to protected method WP_Background_Process::is_process_running()", reintroduced by code standards sniffing. 2021.12.01 - version 3.3.2 * Fix: Load RTL stylesheets when not in SCRIPT_DEBUG mode. * New: Display notices to store managers in front-end and admin when a gift product is not purchasable. * Update: Move cart/order "Free!" price filters to later priority for compat with discounting plugins. 2021.11.01 - version 3.3.1 * Update: Tested against WooCommerce 5.8.0. * Fix: Do not count the cart quantity of the gift itself when syncing quantities of variation to parent variable. * Fix: Restore price filters in the cart to display "Free!" 2021.08.27- version 3.3.0 * Update: Tested against WooCommerce 5.6.0. * Fix: Prevent saving a gift product in it's own the synced product ID settings. * Fix: Stop validating coupon, let WooCommerce core handle all validation. Resolves issue of coupon not being valid when sync product is a variation. * Fix: Check if gift is either product or variation. Resolves issue with syncing to variation. 2021.03.24 - version 3.2.0 * New: Sync quantity of free gift to more than one product at a time. * New: Compatibility with All Products for Subscriptions, free gifts are not valid when user subscribes to cart. * Update: Cart validation, throw notice of unconfigured variable gift *before* user attempts checkout. * Fix: Border styles for Twenty Twenty One theme. * Fix: More specific jQuery listeners to resolve conflicts with Flatsome's cart quickview. 2021.01.14 - version 3.1.0 * New: Templates added for gift variation selection in cart, easier customization. * New: No-JS graceful degradation for gift variation selection. * New: Auto scroll when gift variation edit section is opened scrolls to the gift variation input. * Fix: UX audit, revision to cart edit layout, screen reader and accessibility enhancements. * Update: Tested against WC 4.9. * Update: Remove coupon code from cart if all gift items are removed, and type is ‘free gift’. * Update: Hide product removed notice if coupon is automatically removed. 2020.11.25 - version 3.0.5 * Fix: Rebuild minified script. 2020.11.17 - version 3.0.4 * Update: Tested against WooCommerce 4.7.0. * Fix: Exclude "edit in cart" feature from gifts that are specific variations. 2020.10.28 - version 3.0.3 * Fix: Load minified script if not in SCRIPT_DEBUG mode. * Fix: Converted cart styles from px to em * Fix: Fatal error WooCommerce::is_rest_api_request() does not exist until Woo 3.6. * Fix: Remove woocommerce_get_product_schema which is deprecated. 2020.10.16 - version 3.0.2 * Fix: Missing minified stylesheets. 2020.10.16 - version 3.0.1 * Fix: Undefined $suffix variable when loading stylesheet. 2020.10.15 - version 3.0.0 * New: Gift Variation Selection/Editing in Cart. * New: Gift product(s) quantity syncing with a real product in the cart. * Update: Set prices via woocommerce_product_get_price and woocommerce_product_variation_get_price filters. * Update: Unified all custom hooks with prefix 'wc_fgc_'. 2020.07.22 - version 2.5.2 * Fix: Move environment testing to before including any other files. Fixes fatal error when WooCommerce is not active. 2020.07.09 - version 2.5.1 * Update: Tested against WooCommerce 4.3.0. 2020.06.30 - version 2.5.0 * New: Revise `get_gift_data()` to always include product object in 'data' key. * New: Only attempt to add the free gift to the cart if it is purchasable. * New: Even strict enforcement of quantity of gift in cart, which will help integration with mini-extensions. 2020.06.09 - version 2.4.6 * Fix: Correct build process to reduce plugin file size. 2020.06.09 - version 2.4.5 * Update: Tested against WooCommerce 4.2.0. * Fix: Fatal Error in update routine, call "Call to protected method WP_Background_Process::is_process_running()" 2020.05.08 - version 2.4.4 * Update: Tested against WooCommerce 4.1.0. 2020.03.16 - version 2.4.3 * Update: Tested against WooCommerce 4.0.0. * Fix: Compatibility with single-use recurring coupons incorrectly removing gift from cart. * Fix: Typo in filter name, should be wc_fgc_auto_update_db 2020.01.07 - version 2.4.2 * Update: Tested against WooCommerce 3.9.0. * New: Add woocommerce_free_gift_coupon_apply_coupon_data filter for modifying coupon gift data. * Fix: Use cart getter to access applied coupons. 2019.10.24 - version 2.4.1 * Fix: Only show free gift admin UI for supported coupon types. * New: Add support for WooCommerce Subscriptions' custom coupon types. 2019.10.14 - version 2.4.0 * Fix: Prevent malicious users from increasing the quantity of the free product in the cart. 2019.08.06 - version 2.3.1 * Tweak: Fix date in changelog 2019.08.06 - version 2.3.0 * IMPORTANT: WooCommerce 3.1.0 is minimum required version. * Important: PHP 5.6.20+ is now required. * Update: Tested against WC 3.7 2018.04.10 - version 2.2.2 * Update: Tested against WC 3.6 2018.12.19 - version 2.2.1 * Fix: Better sanization of coupon meta data. Stop using (array) to cast null string to array. Should resolve empty row when creating new coupon. 2018.12.05 - version 2.2.0 * New: Add support for free gift in *addition* to core coupon types (Percentage Discount, Fixed Cart Discount, Fixed Product Discount) 2018.08.03 - version 2.1.3 * Fix: Add support for Smart Coupons titles displaying on the cart page 2018.08.02 - version 2.1.2 * Fix: Stop Subscriptions from removing free gifts 2018.07.10 - version 2.1.1 * Fix: Even if not supported, don't crash WooCommerce 2.6.x sites. 2018.02.19 - version 2.1.0 * New: Compatibility with Smart Coupons. Auto and bulk generate Free Gift style coupons. 2018.02.19 - version 2.0.0 * IMPORTANT: WooCommerce 3.0.0 is minimum required version. * IMPORTANT: Requires a database upgrade to coupon data. Please take appropriate backups. * New: Now supports assigning quantities to each gift! 2017.08.17 - version 1.2.4 * New: Add support for new WooCommerce updater 2017.07.14 - version 1.2.3 * Fix: Incorrect path to plugin's language folder in load_plugin_textdomain() * Fix: Potentially fatal error when adding a free gift variation to cart 2017.06.01 - version 1.2.2 * Fix: Allow free gift coupon to still have the option of providing free shipping for the entire order. 2017.03.06 - version 1.2.1 * Fix: Undeprecate check_cart_items(). Should prevent multiple individual use coupons from being used simultaneously. 2017.01.10 - version 1.2.0 * IMPORTANT: WooCommerce 2.4 is minimum supported version * New: WC 2.7 Compatibility - resolve 2.7 PHP warnings * New: WC 2.7 Compatibility - use 2.7 CRUD when possible in admin metabox, and when saving order item meta * New: New helper methods has_free_shipping() and get_gift_ids() * Fix: Free gifts are removed from cart directly when coupon is removed, instead of via woocommerce_check_cart_items * Fix: WC 2.7 Compatibility - remove previously added script, core automatically refreshes cart 2016.05.09 - version 1.1.0 * New: WC 2.6 Compatibility: add script to cart page to trigger page reload when coupon added * New: WC 2.6 Compatibility: add back-compatibility for legacy Free Shipping method. Please switch to Shipping Zones. 2015.12.08 - version 1.0.9 * Fix: class $version variable * Tweak: Update WordPress tested against 4.4 * Add: GPL3 license 2015.11.09 - version 1.0.8 * Fix: don't squash other free shipping coupons 2015.10.13 - version 1.0.7 * Fix: make free shipping specific to free gift only. To use: Free Shipping must be enabled and set to "requires a valid free shipping coupon" if you don't wish to make the entire order's shipping free * New: Add compatibility for adding Subscription as free gift 2015.09.25 - version 1.0.6 * Fix: allow free shipping with free gift 2015.05.06 - version 1.0.5 * Tweak: code improvements in coupon options output 2015.02.03 - version 1.0.4 * WooCommerce 2.3-compatible: switch to Select2 2014.11.12 - version 1.0.3 * Fix "non-static method WC_Free_Gift_Coupons::add_order_item_meta() should not be called statically" 2014.09.11 - version 1.0.2 * Fix "Sorry, this product cannot be purchased." bug when adding points discount with Points and Rewards extension 2014.07.05 - version 1.0.1 * Fix: wc_add_error() to wc_add_notice() * Fix: add variation attributes to cart/order if free gift is variation 2014.05.27 - version 1.0.0 * Initial release