- Update - WordPress 5.5 compatibility
- Update - WooCommerce 4.5 compatibility
- Fix - License user ID is no longer being overwritten with the user ID of the currently logged in administrator when manually completing an order in the backend.
- Fix - The plugin no longer throws a PHP Error when visiting "My Account" if there are licenses assigned to deleted WooCommerce products.
- Fix -
register_rest_route()
no longer throws a PHP notice. - Fix - The plugin now prevents license activation/deactivation if the license key has expired.
- Add - Functions for license operations:
lmfwc_add_license()
,lmfwc_get_license()
,lmfwc_update_license()
,lmfwc_delete_license()
,lmfwc_activate_license()
, andlmfwc_deactivate_license()
- Add - Maximum activation count (
times_activated_max
) now allows for unlimited activations if the value is left empty (null
) - Add - It is now possible to select on which order status changes licenses will be generated ("Completed", "Processing", etc.)
- Add - Customers can now activate and deactivate their license keys inside "My Account" if the setting is enabled.
- Add - The "allow duplicate license keys" setting has been added.
- Add - STOPPED AT MERGE PULL REQUEST #740
- Add - A "User ID" field has been added on the license key level. Add/Import forms and REST route have been updated to allow for this new parameter.
- Add - User ID automatically gets assigned to a license key when a customer purchases said license key.
- Add - Automatic stock management. License key stock will now automatically be adjusted when adding, deleting, and selling license keys. Can be turned off via the settings.
- Add - The License table columns can now be expanded via the following filters:
lmfwc_table_licenses_column_name
,lmfwc_table_licenses_column_value
, andlmfwc_table_licenses_column_sortable
- Add - The CSV export can now be customized via the settings.
- Add - The CSV export can also be customized with the following filter:
lmfwc_export_license_csv
. - Add - Permissions to REST API routes. Currently, all REST API routes require the
manage_options
permission for both objects (licenses and generators). Can be customized with the following filter:lmfwc_rest_check_permissions
- Fix - the
lmfwc_rest_api_validation
filter has been fixed. - Fix - The plugin will no longer throw PHP errors or notices on the "Licenses" page inside "My Account" when a product is missing.
- Fix - Fix the Show/Hide/Copy buttons for variable products and other scenarios.
- Fix - On the "Licenses" page, the order filter dropdown now displays the order sorted by the order ID, in a descending manner.
- Fix - When selling existing license keys, the "Expires at" field will be preserved after purchase.
- Fix - Product data is now being properly saved for variable products.
- Fix - The text domain is now properly set to
license-manager-for-woocommerce
. Thanks to @sebastienserre for pointing this out and fixing it! - Tweak - Removed the legacy V1 API routes.
- Tweak - Updated the database tables structure.
- Tweak - Searchable dropdown fields (select2) added to the license page filters.
- Tweak - The admin notices class has been reworked and now supports multiple notices.
- Tweak - Refactored the abstract resource repository.
- Add - The plugin now checks the PHP version upon activation. If the version is on/below 5.3.29, the plugin will not activate.
- Add -
lmfwc_event_post_order_license_keys
event action has been added. You can hook-in with theadd_action()
function. - Fix - Removed the "public" properties from the class constants.
- Fix - Column screen options now work for the license and generator pages.
- Fix - Timestamps are now properly converted and displayed on the licenses page.
- Fix - Adding a generator without a "expires_at" no longer display the "-0001-11-30" date value. You will need to edit existing license keys, remove the value and save them to get rid of the invalid date.
- Fix - If no generators are present, the plugin would throw a PHP notice when going to the "Generate" page inside on the "Generators" menu page.
- Tweak - It is now possible to create API keys without WooCommerce installed.
- Tweak - Removed the redundant plugin Exception class.
- Update - WordPress 5.3 compatibility
- Update - WooCommerce 3.8 compatibility
- Add - Introduced a License key meta table, along with add/update/get/delete functions.
- Add - The plugin now checks for duplicates before adding or editing license keys (this also applies to the API).
- Add - Generators can now freely generate license keys and add them directly to the database.
- Add -
lmfwc_rest_api_validation
filter for additional authentication or data validation when using the REST API. - Add - Field for copy-pasting license keys on the "Import" page.
- Add - "Mark as sold" and "Mark as delivered" bulk actions on the license keys page.
- Add - A new "My license keys" section for customers, under the "My account" page.
- Add - The "Expires at" field can now directly be edited when adding or editing license keys. This also applies to the API.
- Tweak - Code reformat, refactor, and cleanup.
- Fix - Typo on the Settings page (the
v2/licenses/activate/{license-key}
route now displays correctly as a GET route). - Fix - The
activate
anddeactivate
license key actions now work on the license keys overview. - Fix - When adding or editing license keys, the "Product" field now also searches product variations.
- Fix - Multiple admin notices can now be displayed at once.
- Fix - Automatic loading of plugin translations.
- Add - v2/deactivate/{license_key} route for license key deactivation.
- Add - "Clear" functionality to order and product select2 dropdown menus.
- Fix - License key status dropdown order ("Active" is first now).
- Fix - PHP fatal error when deleting license keys.
- Fix - PHP Notices when performing certain operations (license key import, generator delete).
- Fix - "lmfwc_rest_api_pre_response" hook priority is now correctly set to 1.
- Add - Template override support.
- Add - Select2 dropdown fields for orders and products when adding or editing license keys.
- Add - Search box for license keys. Only accepts the complete license keys, will not find parts of it.
- Add - v2 API routes
- Add - Setting for enabling/disabling specific API routes.
- Add -
lmfwc_rest_api_pre_response
filter, which allows to edit API responses before they are sent out. - Tweak - Complete code rework.
- Tweak - Reworked v1 API routes (maintaining compatibility)
- Fix - Users can now edit and delete all license keys, even sold/delivered ones.
- Fix - WordPress installations with large numbers of orders/products could not open the add/edit license key page.
- Fix - CSS fallback font for the license key table.
- Fix - "Valid for" text in customer emails/my account no longer shows if the field was empty.
- Add - Filter to change the "Valid until" text inside the emails (
lmfwc_license_keys_table_valid_until
). - Fix - Minor CSS fixes.
- Fix - When selling license keys, the "Expires at" field would be set even when not applicable. This does not happen anymore.
- Add - German plugin translation
- Fix - "There was a problem adding the license key." error message should not appear any more when adding a license key.
- Add - You can now define how many times a license key can be activated using the plugin REST API endpoints.
- Add - You can now define how many license keys will be delivered on purchase.
- Add - Variable product support.
- Add - Export license keys feature (CSV/PDF)
- Add - License key activation REST API endpoint.
- Add - License key validation REST API endpoint.
- Add - New WooCommerce Order action to manually send out license keys.
- Add - "Expires on" date to Customer order emails and Customer order page.
- Add - Filter to replace the "Your License Key(s)" text in the customer email and "My account" page (
lmfwc_license_keys_table_heading
). - Add - Generators now display the number of products to which they are assigned next to their name.
- Enhancement - Various UI improvements across the plugin.
- Tweak - The "Add/Import" button and page have been renamed to "Add license"
- Tweak - The GET license/{id} REST API endpoint now supports the license key as input parameter as well.
- Tweak - Changes to the REST API response structure.
- Tweak - Changes to the database structure.
- Fix - The license key product settings will no longer be lost when using quick edit on products.
- Fix - Licenses keys will no longer be sent out more than once if you change the order status from "complete" to something else and then back to "complete".
- Fix - On some environments the activate hook wouldn't work properly and the needed cryptographic secrets weren't generated. I negotiated a deal for this not to happen anymore.
- Fix - When going to the REST API settings page you no longer get a 500 error. Once again, my mistake.
- Fix - Removed unused JavaScript code. It was just lurking there for no purpose, at all.
- Feature - Clicking license keys inside the table now copies them into your clipboard. Cool huh?
- Fix - CSV and TXT upload of license keys now works as expected again. I hope.
- Tweak - Minor UI improvements on the licenses page. I made stuff look cool(er).
- Fix - The cryptographic secrets were being deleted on plugin update, causing the plugin to become unusable after the 1.1.0 update. I'm really sorry for this one.
- Feature - Added license and generator api routes. Currently available calls are GET (single/all), POST (create), and PUT (update) for both resources.
- Feature - API Authentication for the new routes. Currently only basic authentication over SSL is supported.
- Feature - Editing license keys is now possible.
- Feature - Added a "valid for" field on the bulk import of license keys.
- Tweak - The plugin now supports license key sizes of up to 255 characters.
- Tweak - Major code restructuring. Laid the foundation for future features.
- Tweak - Reworked the whole plugin to make use of filters and actions.
- Enhancement - Minor visual upgrades across the plugin.
- Update - WordPress 5.1 compatibility.
- Update - readme.txt
- Initial release.