Version 3.4.11 — October 4, 2016
- Fix: License actions not working due to single slashed URLs.
- Tweak: Spelling error in settings.
- New: Add tooltips to relevant license settings and fields.
Version 3.4.10 — September 22, 2016
- Fix: Renewal notices can be sent to lifetime license keys
- Fix: PHP 5.2 compatibility
- Fix: PHP notice when running prevent_expired_downloads() directly
Version 3.4.9 — August 12, 2016
- Fix: Key icon click no longer works from Purchase History > View Licenses.
- Fix: Renewal discount flags not properly cleared when renewals are removed from cart.
- Tweak: Correct capitalization on edd_sl_get_license_keys_of_user filter.
Version 3.4.8 — August 8, 2016
- Tweak: Improved labels for activation limit settings
- Tweak: Improved sample plugin and theme with better license key validation and error handling
- Tweak: Added a filter to the check_item_name() method
- Tweak: Added tooltips throughout the settings screens
- Tweak: Replaced get_post_meta() with edd_get_payment_meta() for better future proofing
- Tweak: Better display of current license key on Manage Sites screen
- Tweak: Remove usage of _edd_sl_site_count post meta as it is not used
- Tweak: get_price_id() now falls back to the default price ID if no price ID exists
- Tweak: get_price_id() now looks at price_id stored in purchase meta if none is set on the license
- Tweak: Combined all past license key generation options into a single tool
- Fix: Removed unused JavaScript in
edd_license_keys
shortcode - Fix: Incorrect error message when trying to upgrade and renew a license key at the same time
- Fix: Upgrade path should not be shown when license key is part of a bundle
- Fix: Incorrect update count on Updates page for theme updater class
- Fix: License key upgrades can be added to the cart multiple times
- Fix: User ID now properly pulled from EDD_Payment if not set on license
- Fix: Activation limits not set properly during license key generation for past purchases
- Fix: Lifetime licenses sometimes show as expiring
- Fix: edd_sl_override_history_content needs to check if in_the_loop
- Fix: Upgrading from Bundle A to Bundle B places licenses of Bundle A inside of Bundle B
- Fix: Translation error with {expiration} template tag
- Fix: Custom date ranges break when crossing year boundary in Reports
- Fix: PHP notice for undefined index
- Fix: Incorrect table columns when purchase contains no products
- Fix: Duplicate update notifications for plugins in multisite installs
Version 3.4.7 — April 25, 2016
- Fix: Missing is_main_query() check in purchase history template file override
- Fix: Error messages during license renewal not displayed properly on checkout
- Fix: Upgrading license keys connected to Abandoned payments is improperly allowed
- Fix: Undefined index notices for first_name, last_name, and email
- Fix: View Licenses link shows even when there are no license keys
- Fix: Incorrect backwards compatibility filter edd_sl_license_exp_lengh
- Fix: Improved PHPDocs
- Fix: Non-static method called statically
- Fix: Chained upgrade paths not functioning properly
- Fix: Properly detect .dev and .local TLDs
- Fix: Ensure updater does not ping itself
- Fix: Missing nonce verification when adding upgrade to cart
- Fix: dev. subdomains are not considered development sites
- Fix: Product names that include hyphens are not displayed properly in Licenses page
- Fix: Incorrect class name in License Keys template file
- Tweak: Display customer name and link name to customer details page instead of username in Licenses table
- Tweak: Added license key to edd_sl_download_package_url filter
- Tweak: Renewal link in emails should be clickable
- Tweak: Use content_url() instead of WP_CONTENT_URL
- Tweak: Removed markup from translation strings
- Tweak: Added edd_sl_license_upgraded action
- Tweak: Introduced can_extend() method to the license keys template file
- Tweak: Allow stylesheets to be dequed
- Tweak: Added new wp_override parameter to EDD_SL_Plugin_Updater class to permit overriding results from WordPress.org
- Tweak: Added new edd_sl_row_actions filter
- Tweak: Renamed get_download_by_license() method to get_download_id_by_license() for clarity
Version 3.4.6 — January 7, 2016
- Fix: Notices when viewing Licenses shortcode when logged out
- New: Support for EDD 2.5 Subsections
Version 3.4.5 — January 5, 2016
- Fix: Invalid id attributes on upgrade path drop downs
Version 3.4.4 — December 31, 2015
- Tweak: get_version no longer requires a license key
- Fix: View Version Details link shows blank page
- Fix: Renewal discount can be incorrect for old variable priced items
- New: Added new edd_sl_column_{column_name} action
Version 3.4.3 — November 19, 2015
- Fix: URLs with port numbers do not validate properly
- Fix: Upgrading a license key that has been renewed can cause it to be marked as expired after upgrading
- Fix: Undefined index error when entering page number manually on Licenses page
- Fix: Deleting abandoned payment records that contain upgrades or renewals deletes the original license key
Version 3.4.2 — November 2, 2015
- Fix: Regenerating license keys for purchase can, in rare cases, cause license keys to get marked as expired
- Fix: Prevent conflict with sites that have a “changelog” post type
- Fix: Use 1,000 instead of -1 for posts_per_page parameter
Version 3.4.1 — October 26, 2015
- Fix: Issue with license key icon displaying improperly in customer purchase history
Version 3.4 — October 20, 2015
- New: Added new shortcode for showing complete license key history
- New: Added new helper function for adding a license renewal to the cart
- New: Price option name is now shown on purchase receipt and purchase history
- Tweak: Improved version checks. Updates now show for al license keys, even if not activated
- Fix: Price Option field in upgrade paths does not update properly when adding new upgrades
- Fix: Renewal discounts not showing properly when renewing multiple license keys for the same product
- Fix: Multiple license keys of the same product cannot be renewed at the same time
- Fix: Renewal reminders get sent for non-published products
- Fix: PHP notices when generating license keys for payment records with multiple bundles
- Fix: Expiration date not set properly when upgrading from lifetime to non-lifetime
- Fix: Property of non-object notice
- Fix: Refunding a renewal purchase incorrectly revokes a non-expired license
- Fix: License activation count increases without setting status to active
Version 3.3.3 — October 7, 2015
- TWEAK: Actually add wrapper function for retrieving price ID
Version 3.3.2 — October 7, 2015
- FIX: Disable allowing upgrades when a renewal for the same item is in the cart
- FIX: Corrected issue with renewal links not always working for variable priced products
- FIX: License deactivation fails when item_id is passed instead of item_name
- FIX: Renewal Notices Sent on Recurring Payment Purchases
- TWEAK: Add wrapper function for retrieving price ID
Version 3.3.1 — August 24, 2015
- FIX: Upgrading a license key can improperly extend an expiration date
- FIX: Upgrade prorate discount fails if price ID no longer exists
- FIX: Renewal discount files if price ID no longer exists
- TWEAK: Updated French language files
Version 3.3 — August 19, 2015
- NEW: Added ability to create upgrade paths for license keys so customers can upgrade their licenses from their account page
- NEW: Added Licenses tab to the Customer details screen
- NEW: Added option to allow DEV sites to not count towards activation limits
- FIX: Undefined variable in parse-readme.php
- FIX: Special characters not supported in emails
- FIX: EDD_BYPASS_ITEM_ID_CHECK constant now respected in package download process
- FIX: Generate Missing Licenses button creates orphaned license keys when used on bundles
- FIX: Renewal notice emails fail to send if email address contains a hyphen
- FIX: Renewal notices now always sent to email address on customer record
- FIX: Double update notification in multisite
- FIX: Changelog text field too small
- FIX: Marking an expired license as Lifetime leaves it as expired
- FIX: Non-post object error on 404 pages
- FIX: Refunded license keys can be renewed (should be allowed)
- FIX: License keys not removed when item is removed from payment record
- FIX: Renewal notices logged even if email is not sent
- TWEAK: Added filters to download ID validation
Version 3.2.2 — August 14, 2015
- Improved the display of the license renewal form
- Fixed a PHP notice during activation
- Fixed an error when Apply License Renewal is clicked before entering a license key
- Fixed an issue with CSS being loaded on all pages
- Fixed an issue with renewing multiple license keys at once
Version 3.2.6 — June 9, 2015
- FIX: Fatal error when viewing licenses for a purchase
- FIX: Licensing data now inserted into the EDD products API endpoint
Version 3.2.5 — June 8, 2015
- NEW: Support for Lifetime Licenses
- FIX: Security updates for a number of AJAX endpoints
- FIX: Fatal Error when Easy Digital Downloads is not activated
- FIX: Links were not properly generated in Licenses > Manage
- FIX: WordPress Compatibility not working correctly with ReadMe parsing
- TWEAK: Activated child-licenses were showing in the inactive licenses view due to their parent license being inactive
- TWEAK: Do not show the input to add more sites to the end user when a license is expired or at its limit
Version 3.2.5 — May 19, 2015
- NEW: Extend EDD API Products endpoint to return relevant SL data
- FIX: “Extend” link not shown on bundles in list table view
- FIX: Updates not installing correctly on Windows Servers
- FIX: Fatal error in Admin on pre EDD 2.3
- FIX: Replace wp_remote_get with wp_remote_post in sample plugin/theme
- FIX: Correct issue with renewal reminder schedule
- TWEAK: Show “Site Inactive” message when trying to deactivate a URL that is not activated
- TWEAK: Properly escape query arg in example theme/plugin
- TWEAK: Deactivate License button in sample theme behaving improperly
- TWEAK: “All” filter in license list table did not show all license