Bugs Squashed:
- Fix: Hide PayPal and Braintree credentials as they were visible without clicking the view icon.
- Fix: Maximum number of simultaneous connections per member setting.
Enhancements:
- Added Freemius integration to help Restrict Content Pro be a better plugin.
- Modified template files: card-update-form.php, paypal-express-confirm.php, register-single.php, register.php, subscription.php.
- New: Add support for multiple active memberships per customer.
- New (WARNING): Authorize.net has been removed from core and moved to a separate add-on. The new add-on can be installed here: https://wordpress.org/plugins/rcp-authorize-net/
- New: One-time discounts can now be configured on a per-discount basis rather than globally.
- New: Stripe gateway has been updated to use Stripe Elements.
- New: CSV user import tool now available in Restrict > Tools > Import.
- New: Added WP-CLI integration.
- New: Expiration and renewal notices can now be limited to certain membership levels only.
- New: Added support for bulk adding memberships to existing users from the Users table.
- New: Added "payment received" email template for admins.
- New: Use WP_List_Table for all admin table pages.
- New: Add default email template content on new installs.
- New: Log all payment events in the customer notes.
- New: Send customer name in Stripe API request.
- New: Add payment meta and membership level meta functions.
- New: Signup fees are no longer applied when manually renewing an existing membership.
- New: Stripe gateway tested with API version 2019-05-16.
- Tweak: Stop unchecking "auto renew" when a membership expires.
- Tweak: All translation files have been updated from plugin source code.
- Tweak: Updated plugin author name and URL.
- Fix: RCP datepicker styles affecting other plugin datepickers.
- Fix: Reduce the three RCP membership columns on the Users table to one single "Membership" column. This reduces database queries and improves loading time on this page.
- Fix: Payments are now only recorded via webhooks/IPNs if we can match the payment to a very specific RCP membership. This resolves issues if the same PayPal account is used for multiple different products and one customer is involved in both products.