*** Groups WooCommerce ***

2020.03.20 - version 1.18.0
* WordPress 5.3 compatible.
* WooCommerce 4.0 compatible.
* Enhanced the products screen column showing groups related to products, now sortable.

2019.09.15 - version 1.17.0
* Updated for compatibility with changes in WooCommerce Subscriptions 2.6.
* Added a woocommerce_subscriptions_switch_completed handler.
* Added related extensions info.

2019.08.25 - version 1.16.0
* WordPress 5.2 compatible.
* WooCommerce 3.7 compatible.

2019.04.18 - version 1.15.0
* WooCommerce 3.6 compatible.
* Added a maintenance routine to clean up expired memberships which might not have been removed due to server issues.
* Added a check for data from older versions to obtain valid order IDs granting group memberships.

2019.02.26 - version 1.14.0
* WordPress 5.1 compatibility tested.
* WooCommerce 3.5 compatibility tested.

2018.11.24 - version 1.13.0
* Updated and tested for WordPress 5.0 compatibility.
* Updated and tested for WooCommerce 3.5 compatibility.
* Added the groups_woocommerce_exclude_registered_group filter.
* Removed the Registered group as a choice unless the groups_woocommerce_exclude_registered_group filter returns false.

2018.05.28 - version 1.12.2
* Updated compatibility with WooCommerce 3.4.
* Added the Woo plugin header tag.
* Added missing ABSPATH checks.
* Added incomplete API documentation.

2018.04.04 - version 1.12.1
* Added the groups_woocommerce_handle_woocommerce_subscription_status_updated filter.

2018.03.06 - version 1.12.0
* Replaced use of language domain constant with string literal.
* Updated compatibility with WooCommerce 3.3.
* Updated compatibility with WordPress 4.9.
* Updated access to product, documentation and support resources.
* Added the readme.txt.
* Fixed a rendering issue in the Groups product tab.
* Showing the right icon in the product tab.
* Updated the translation template.
* Updated the German translation.
* Updated the Spanish translation.
* Updated the French translation.

2017.06.13 - version 1.11.3
* Added support for subscriptions without parent order (WC >= 3.x only).

2017.05.04 - version 1.11.2
* Fixed a fatal error with WooCommerce < 3.x

2017.04.28 - version 1.11.1
* Fixed WSOD due to 'Call to a member function get_id() on boolean ...' when no subscription parent exists.
* Fixed possible exception on invalid order.
* Improved the subscriptions display so info is displayed also for subscriptions without an order.
* Updated usage of some methods and properties to avoid notices.

2017.04.10 - version 1.11.0
* Updated the plugin for compatibility with WooCommerce 3.0.0.
* Moved plugin boot process hooked on plugins_loaded to simplify version dependencies.
* Replaced use of properties by new WC 3.x getters/setters.
* Maintained backwards-compatibility within own library loaded version-specifically.
* Updated the product panel hook to use new action with backwards-compatibility.

2016.12.05 - version 1.10.0
* Improved the admin section for Groups using more appropriate headings.
* Fixed error "Call to a member function exists() on boolean ..." from groups_ws_get_product() calls
  when no product is returned.

2016.06.23 - version 1.9.6
* Fixed a notice due to undefined variable.
* Improved check for WCS < 2.x so actions are not added when WCS is not installed.

2016.03.18 - version 1.9.5
* Updated to register WCS 2.x deprecated action only on WCS < 2.x
* Added new action handler for woocommerce_scheduled_subscription_end_of_prepaid_term.

2016.03.16 - version 1.9.4
* Fixed undefined value returned in unused method.
* Fixed use of deprecated function woocommerce_get_formatted_variation().
* Fixed undefined variable used in hook when subscription is trashed.
* Guarded against notice of undefined variable $subscription when using wcs_get_subscription_from_key() in  Groups_WS_Handler::get_subscription_by_subscription_key().

2015.12.21 - version 1.9.3
* Fixed PHP notices when no order is related to a subscription
  which is activated, suspended, etc.

2015.11.29 - version 1.9.2
* Added a new handler for switched subscriptions to support
  changes in WC Subscriptions 2.x

2015.10.23 - version 1.9.1
* Fixed a fatal error which could occur in circumstances where an order can't be obtained
  while trying to render subscription information.

2015.10.11 - version 1.9.0
* Compatible with WooCommerce Subscriptions 2.x

2015.08.12 - version 1.8.2
* Added support for saving group assignments through the Save Changes button
  of the Variations tab for WC 2.4

2015.07.13 - version 1.8.1
* Added Give Products compatibility.
* Guarded GROUPS_WS_LOG so it can be defined in e.g. wp-config.php
* Fixed the group assignment for orders that were processing and
  changed to completed adding users back to groups.
* Minor admin UI improvements.

2015.07.07 - version 1.8.0
* Added the Spanish translation.
* Updated the German translation.
* Added the French translation.

2015.04.01 - version 1.7.3
* Fixes an issue when WC_Cart::get_cart() is invoked through this plugin's
  option filters on woocommerce_enable_guest_checkout and
  woocommerce_enable_signup_and_login_from_checkout before the wp_loaded
  action was done. This could happen if a third-party plugin accesses those
  options before wp_loaded.

2015.03.10 - version 1.7.2
* Fixes an issue with switched subscriptions removing members from a group;
  although the subscription switched to grants access to group X, if the
  subscription switched from granted access to X, too, the user was removed.

2014.11.12 - version 1.7.1
* Allows to edit time-limited memberships manually (in user profiles).
* Fixed missing language domains on some strings.
* Fixed own membership info is not shown when editing own user profile
  and the option is enabled.
* Fixed duplicate membership lines shown in user profile on empty bucket
  after bucket with timestamp(s).
* Fixed a bug in the membership termination algorithm
  (group comparison in the terminator).
* Fixed the subscription switching handler to also react on completed orders.

2014.08.28 - version 1.7.0
* Added changes for WooCommerce 2.2.0 compatibility

2014.05.02 - version 1.6.0
* Added group assignments by product variation
* Using selectize instead of checkboxes for product groups
* Fixed missing plural forms in translation template
* German translation completed

2014.04.27 - version 1.5.4
* Added: Load translations from the languages folder.
* Changed: Plugin text domain from 'groups' to 'groups-woocommerce'.
* Added: Translation template in the languages folder.
* Added: Example translation de_DE (incomplete translation).

2013.12.27 - version 1.5.3
* Fixed: Prematurely ended subscriptions when orders are processing and a
         subscription is cancelled.

2013.11.23 - version 1.5.2
* Improved: Dynamically change groups view for products based on product type.
* Added: The [groups_woocommerce_memberships] can now be used to render info
         on time-limited memberships for the current user.
* Fixed: A fatal error would be caused when trying to render information on
         subscriptions using the [groups_woocommerce_subscriptions_table]
         shortcode while the WooCommerce Subscriptions plugin is not active.
* Changed: Allowing to execute the subscription expiration handling process
           also when the related order is processing (required to work with
           switched subscriptions when groups should be removed as the
           switched subscription is cancelled).
* Improved: Replaced uses of deprecated get_users_subscription method

2013.09.23 - version 1.5.1
* Fixed: Fatal Error because of a missing class when WooCommerce Subscriptions
  is not installed and membership info should be shown in user profiles.

2013-08-20 - version 1.5.0
* Fixed: membership removal is only effective if no other orders grant same
* Added additional fields with plugin version, start timestamp, duration and
  duration UOM to the product groups usermeta.
* Fixed: show_count and show_table options not used when rendering
  subscriptions table.
* Added exclude_cancelled_after_end_of_prepaid_term option to subscription
  table renderer; used to show valid group memberships for cancelled
  subscriptions in user profile
* Fixed: incorrect $$output variable reference in subscription table renderer
* Fixed: some non-existent indexes used in subscription table renderer
* Removed the word 'Unlimited' from group membership description to avoid
  confusion
* Fixed: remove group membership when subscriptions are cancelled and order is
  cancelled or refunded
* Added: Groups column in products admin view

2013-07-03 - version 1.4.1
* Fixed: missing $accepted_args on subscription_end_of_prepaid_term hook
* Added: options to show group membership info in user profiles / when editing

2013-04-30 - version 1.4.0
* added feature: option to force registration on checkout when a Groups-
  related product is in the cart
* added feature: new shortcode [groups_woocommerce_subscriptions_table] that
  lists a user's subscriptions

2013-02-27 - version 1.3.4
* Fixed: Using the subscription_end_of_prepaid_term action instead of
  cancelled_subscription action to end group memberships for cancelled
  subscriptions - this requires WooCommerce Subscriptions version 1.2.6 or
  higher as that action has been introduced as of then.
* added feature: subscriptions on hold will remove users from groups; when
  reactivated, users are added back to the groups (enabled by default)

2013-01-10 - version 1.3.3
* visual changes in groups tab on products (needed for WooCommerce 2.0)

2012.12.13 - version 1.3.2
* 1.2.1 - 1.3.1 sync

2012.12.11 - version 1.3.1
* WP 3.5 compatibility

2012.12.05 - version 1.3.0
* added feature: group memberships based on normal products can have a limited
  duration

2012.10.07 - version 1.2.1
* New updater

2012.10.07 - version 1.2.0
* added feature: choose when users are added to groups (processing or
  completed)
* added feature: remove from group when product is purchased

2012.06.21 - version 1.0
 * First release
