Changelog ========= #### 4.8.6 - Jun 24, 2021 - Add nonce field to button for dismissing notice asking for plugin review. - Add strings from config/ directory to POT file. - Add nonce check to AJAX endpoint for refreshing cached Mailchimp lists. - Add capability check to AJAX endpoint for retrieving list details. - Schedule event to refresh cached Mailchimp list upon plugin activation. Thanks to the team over at [pluginvulnerabilities.com](https://www.pluginvulnerabilities.com/) for bringing some of these changes to our attention. #### 4.8.5 - Jun 1, 2021 Add nonce verification to all URL's using _mc4wp_action query parameter. This fixes a CSRF vulnerability where a malicious website could trick a logged-in admin user in performing unwanted actions. A special thanks to Erwan from [WPScan](https://wpscan.com/) for bringing this issue to our attention. #### 4.8.4 - May 7, 2021 - Add `defer` attribute to JS file, so page parsing isn't blocked at all. - Rewrite plugin CSS to optimize for selector performance and get rid of some duplication. After installing this update, make sure to also update any add-on plugins like [Mailchimp for WordPress Premium](https://www.mc4wp.com/premium-features/) and [Mailchimp Top Bar](https://wordpress.org/plugins/mailchimp-top-bar/). #### 4.8.3 - Jan 21, 2021 - Fix fatal error on older PHP versions when submitting form without any subscriber tags set in the form settings. - Minor performance improvement in bootstrap method of the plugin. #### 4.8.2 - Jan 20, 2021 - Allow short-circuiting `mc4wp_subscriber_data` filter by returning `null` or `false`. - Use a subdirectory for the default debug log file location, so that it's easier to protect using htaccess. - Improved reliability for fetching lists from mailchimp when lists have high stats.member_count property. #### 4.8.1 - Aug 25, 2020 - Fix notice by explicitly setting `permission_callback` on registered REST route. - Minor internal code improvements. #### 4.8 - Jul 9, 2020 - Plugin now requires PHP 5.3 or higher. - Prefix overlay classname to prevent styling collissions with other plugins. - Form sign-ups can now add tags to both new and existing subscribers. - Update JavaScript dependencies. - Register script early to work with Gutenberg preview. #### 4.7.8 - Jun 04, 2020 - Add `MC4WP_API_V3::add_template` method. - Minor code hardening to ensure a default form is always set. - Update JS dependencies to their latest versions. - Fix icon for Gutenberg block. #### 4.7.7 - Apr 28, 2020 - Update JS dependencies to their latest versions. - API client `add_list_member` method now has an additional parameter to skip merge field validation. - Simplify code for updating an existing form. #### 4.7.6 - Apr 9, 2020 - Update JS dependencies to their latest versions. - Check if className is of type string, fixes a console warning when clicking inside a SVG element. - Minor improvements to the AMP implementation to address harmless validation warnings. #### 4.7.5 - Feb 10, 2020 - Add AMP compatibility to sign-up forms, thanks to Claudiu Lodromanean. This uses the [official AMP plugin for WordPress](https://amp-wp.org). - Add settings key to WPML config so settings can easily by copied over to translated versions of a form. - Optimize size & performance of JavaScript code, resulting in a file that is 40% smaller. - Update CodeMirror to its latest version. - Escape all string translations. #### 4.7.4 - Dec 7, 2019 **Fixes** - htaccess config for servers running Apache 2.4 or later. #### 4.7.3 - Dec 4, 2019 **Fixes** - Top Bar & User Sync add-on using API v2 since version 4.7.1. - Revert change in formatter for date fields, breaking all forms with date fields in them. **Improvements** - Add getter method for raw (unmodified) data on form class. #### 4.7.2 - Nov 27, 2019 **Fixes** - Invalid .htaccess file in case there already is one in the uploads directory. #### 4.7.1 - Nov 26, 2019 **Improvements** - Update MemberPress hook names. Thanks [Ian Heggaton](https://github.com/pixelated-au)! - Use WordPress.org translations instead of bundling translation files in plugin itself. - Write .htaccess to directory of debug log file, to prevent file access. - Add some convenient hooks for Checkout for WooCommerce. - Stop parsing shortcodes in text widgets as WordPress core does this since version 4.9. #### 4.7 - Nov 7, 2019 **Improvements** - Add role=alert to form notices. - Add setting to pre-check sign-up checkbox for Gravity Forms integrations. - Add new position for WooCommerce integration: directly after the billing_email field. - Fix PHP notices for submitting a form and saving a form as an administrator. - Add link to [Koko Analytics plugin](https://wordpress.org/plugins/koko-analytics/). #### 4.6.2 - Oct 24, 2019 **Fixes** - Address fields in forms would always be required (even if really optional). **Improvements** - Add proper SVG admin menu icon. - Minor overall performance and memory usage improvements. #### 4.6.1 - Oct 7, 2019 **Fixes** - Fixed list cache usage for WPForms, Gravity Forms and Ninja Forms integrations. #### 4.6.0 - Oct 7, 2019 **Improvements** - Improved fetch and cache mechanism for retrieving Mailchimp account details, fetching data only when it is required. - Updated [Mithril](https://mithril.js.org/) and [CodeMirror](https://codemirror.net/) dependencies. - Decreased size of `forms.js` from 22KB to 9KB. - No longer requiring jQuery anywhere. - Increase API HTTP request timeout to 15 seconds. Please note that installing this update requires you to also update any add-ons like [Mailchimp Top Bar](https://wordpress.org/plugins/mailchimp-top-bar/) and [Mailchimp for WordPress Premium](https://www.mc4wp.com/premium-features/) (if installed). #### 4.5.5 - Sep 12, 2019 **Fixes** - Google reCAPTCHA script was still loading even if no forms have it enabled. #### 4.5.4 - Sep 11, 2019 **Improvements** - Removed custom color from menu item for improved accessibility. - Take birthday field format into account when sending data to Mailchimp. - Print Google reCAPTCHA script in footer. **Changes** - Changed plugin name to MC4WP instead of Mailchimp for WordPress. #### 4.5.3 - July 23, 2019 **Fixes** - Temporarily switch status of pending subscribers to "unsubscribe" versus deleting susbcriber before re-subscribing. - Deprecation notice for Gravity Forms version 2.4 and higher. **Improvements** - Filter out empty tags when applying tags to new subscribers. - Show all not installed integrations. - Show notice when form doesn't have a Mailchimp list selected to subscribe people to. - Check function existence for compatibility with WordPress 4.7 - Don't submit form when Google reCAPTCHA is enabled but errors. - Update third-party JavaScript dependencies. #### 4.5.2 - May 8, 2019 **Improvements** - Accept more truthy values in custom integration for improved compatibility with third-party forms. - Update JavaScript dependencies. - Load Google reCaptcha script in footer (if needed). #### 4.5.1 - April 8, 2019 **Additions** - Add sign-up integration for [Give](https://wordpress.org/plugins/give/) - Add sign-up integration for [UltimateMember](https://wordpress.org/plugins/ultimate-member/) **Improvements** - Write to debug log if Google reCAPTCHA secret key is incorrect. - Validate reCAPTCHA keys when savings form settings. - Allow setting an empty "successfully subscribed" message. #### 4.5.0 - March 27, 2019 **Additions** - Built-in integration with Google reCAPTCHA to prevent bots from subscribing to your Mailchimp lists. **Improvements** - Minor improvements to the JavaScript that is loaded on admin pages. #### 4.4.0 - March 1, 2019 **Fixes** - AffiliateWP integration subscribing the wrong user if affiliate ID differs from user ID. **Improvements** - Renamed "MailChimp" to "Mailchimp" to match Mailchimp's new branding. - More accurate handling of timeouts for accounts with many MailChimp lists. - UX improvements for integrations overview page. - Validate MailChimp API key format when it's entered. - Improved compatibility with Klarna Checkout in the WooCommerce checkout integration. - Bumped required PHP version to 5.3 (soft requirement for now). **Additions** - Added Gutenberg block for easily adding a form to a post or page. - Added subscriber tags setting to forms. #### 4.3.3 - December 31, 2018 **Fixes** - Update WPForms integration to properly detect if the WPForms plugin is activated. **Improvements** - Write API request parameters to the debug log in case of connection timeouts. - Update JavaScript dependencies. #### 4.3.2 - December 11, 2018 **Fixes** - Use of `readonly` function, which is only available in WordPress 4.9 or later. #### 4.3.1 - November 28, 2018 **Fixes** - Fatal error on PHP versions older than 5.5 #### 4.3 - November 28, 2018 **Additions** - Added `MC4WP_API_KEY` PHP constant which can be used to set your Mailchimp API key. - Add `mc4wp_mailchimp_list_limit` filter hook to modify the maximum number of Mailchimp lists to fetch. Defaults to 200. **Improvements** - Apply `mc4wp_integration_gravity-forms_options` filter hook on Gravity Forms integration options so the checkbox can be prechecked and the checkbox label text modified. - The `updated_subscriber` JS event is now fired forms not using AJAX as well (when applicable). #### 4.2.5 - Sep 11, 2018 **Improvements** - Only re-add subscriber to list if we want to re-trigger a double opt-in confirmation email. - Change Gravity Forms field name to "Mailchimp for WordPress" - Get rid of cached result of Mailchimp API connection. #### 4.2.4 - July 9, 2018 **Improvements** - Ensure type-safety on some global variables. - Stop showing trashed forms immediately. - Pre-check Mailchimp list when creating a new form if there is only 1 list. - Send `null` for unknown values in usage tracking data (only when opted-in). **Additions** - Add methods for accessing Mailchimp's e-commerce promo code endpoints to API class. #### 4.2.3 - June 11, 2018 **Fixes** - Don't wrap "agree to terms" input in hyperlink element. - Allow [ENTER] key again after field helper overlay is closed. **Improvements** - Fallback to meta-refresh if redirect fails because of "headers already sent" error. #### 4.2.2 - May 22, 2018 **Fixes** - Events Manager integration was not working with logged-in users. - Form preview URL should respect admin HTTP(S) scheme. - Removed use of PHP 5.4 function. **Improvements** - Add "agree to terms" checkbox to field helper. **Additions** - Add filter `mc4wp_http_request_args`. #### 4.2.1 - April 11, 2018 **Fixes** - Namespace usage warning when running PHP 5.2 **Improvements** - Remove obsolete `type` attribute from all `