== Changelog == 2.5.4 - January 19, 2014 **Fixes** - Issue where license auto-deactivated after each update check 2.5.3 - January 14, 2014 **Fixes** - Plugin wouldn't connect for people with API keys ending in `-us10` - Issue where form response wasn't shown when form was set to hide after success. 2.5.2 - January 13, 2014 **Fixes** - Issue with changelog not showing for plugin updates **Improvements** - Use JS object to transfer lists data to Field Wizard. - Field Wizard strings are now translatable - Add `is_spam` method to checkbox integration to battle spam sign-ups - Easy Digital Downloads & WooCommerce checkbox integration now runs after payment is complete, since that's more important - Many minor code & code style improvements - Updated Danish, German, Spanish, French, Italian and Portugese (Brazil) translations **Additions** - You can now set `MC_LOCATION`, `MC_NOTES` and `MC_LANGUAGE` from your form HTML - The submit button now has a default value when generating HTML for it 2.5.1 - December 8, 2014 **Fixes** - Email in URLs after redirecting lost the `@` character. - Textarea's are now re-populated on errors as well. **Improvements** Email is no longer showed on a separate line in email notifications. 2.5 - December 5, 2014 **Fixes** - Fixed JS event bug for older versions of IE **Improvements** - Major refactor of the code that handles form submissions - Notification emails will now show "pretty" field names - Form fields are now only sent to lists that actually have that field - Updated Dutch, Italian, Hungarian and Spanish translation - Minor code improvements **Additions** - Added {email} tag to use in form mark-up - Added French and Spanish (Puerto Rico) translation 2.4.6 - November 18, 2014 **Fixes** - `mc4wp_get_current_url()` fix for IIS servers - Protocol issue when using custom stylesheet **Improvements** - Refactored AJAX script - Added & updated translations - Better handling of expired licenses **Additions** - Automatic formatting of `MC_LANGUAGE` field - `mc4wp_form_redirect_delay` filter to control time before redirect when using AJAX. 2.4.5 - October 9, 2014 **Fixes** - WooCommerce integration was sending last name as `FNAME`. **Improvements** - Fix issue with aggressive WP Super Cache configuration - Make sure `is_email` is only called on strings **Additions** - Added a filter to control the length of `mc4wp_email` cookie 2.4.4 - September 24, 2014 **Improvements** - AJAX Loader is now lazy loaded - Minor performance improvement to class autoloader - Updated Dutch translations **Additions** - Added `.mc4wp-form-submitted` CSS class to style errors after submission attempts - Added `mc4wp-form-success` and `.mc4wp-form-error` CSS classes to AJAX forms - Added Hungarian translations 2.4.3 - September 14, 2014 **Improvements** - Various security improvements - Added Slovak translation - Updated Dutch, Italian and Spanish translations - Improvements to Styles Builder default CSS - Improvements to WooCommerce checkbox integration **Additions** - Allow to change position of checkbox in WooCommerce checkout forms - Add `mc4wp.ajax.before` and `mc4wp.ajax.after` event hooks. - Added some missing text domains 2.4.2 - September 1, 2014 **Bugfixes** - Dequeue zTranslate assets on mc4wp-form pages **Improvements** - URL clean-up for license related requests. - Add double opt-in note to email summaries - Add `-webkit-appearance` reset to checkbox CSS **Additions** - Integration with Events Manager 2.4.1 - August 26, 2014 **Bugfixes** - Minified JS files for changes in Styles Builder **Improvements** - Improved process for license (de)activation and performing update checks. 2.4 - August 25, 2014 **Additions** - Feature to create multiple form styles, where styles only apply to 1 individual form. **Improvements** - Minor CSS improvement for WordPress 4.0 compatibility - Add vertical align reset to Styles Builder - Change API url to new site: https://mc4wp.com/ - Updated Italian translations - Take array fields into consideration when checking if fields are present in form mark-up - Don't use {response} tag if form is hidden after success **Bugfixes** - Remove obsolete closing form tag - Remove `text` attribute from `textarea` elements 2.3.2 - August 12, 2014 **Fixes** - `mc4wp_get_current_url()` now takes ports and the WP site url option into account - Quicktags buttons were not showing because script was not loaded, now it is. - Fixed CSS bug for table column widths in other languages than English **Improvements** - Added deprecated warning to some functions - The "license inactive" notice can now be hidden - Improved CSS reset for the sign-up checkbox - Updated Dutch translations - Updated English translations **Additions** - Added `mc4wp_form_error_{ERROR_CODE}` action hook to allow hooking into all form errors. - Added `{response}` tag to allow setting a custom response position - Added various filters to customize form HTML - Added German language, thanks to [Jochen Gererstorfer](http://slotnerd.de/) - Added Italian language, thanks to [Gianpaolo](http://www.casalegnovernici.it/) - Added link to plugin documentation 2.3.1 - July 29, 2014 Improvements - Required MailChimp fields are now validated server side as well. - Birthday and address fields are now automatically formatted in the correct format - Improved code, memory usage and class documentation Additions - Option to set the text for when a required field is missing 2.3 - July 25, 2014 Fixes - Generated CSS was showing 'Array' when file couldn't be automatically created Improvements - Improved JS code for AJAX forms - Minified assets (CSS & JSS files) will now be loaded, unless SCRIPT_DEBUG is true - Submit button is now disabled during the AJAX request, to prevent double sign-ups Additions - Added `mc4wp_lazy_load_ajax_scripts` filter to disable lazy loading of AJAX scripts - Added JS events: mc4wp.success, mc4wp.error and mc4wp.submit hooks - Added `mc4wp_form_message_position` filter to choose position of form messages - Added `mc4wp_form_error_message` to register custom error messages - Added Brazilian language files 2.2.5 - July 22, 2014 Improvements - Various improvements and fixes related to options and transients 2.2.4 - July 21, 2014 Fixes - CSS Builder throwing an undefined index notice. - CSS Builder not saving Manual CSS values. Improvements - Textual usability improvements to CSS Builder - Show MailChimp field tag in Lists overview table - Minor code improvements Additions - Add visitor IP Address to sign-up data 2.2.3 - July 16, 2014 Fixes - Fix Spanish translation breaking optional form settings Improvements - Allow for `0` values in CSS Builder - Increase width of line toggle labels 2.2.2 - July 7, 2014 Fixes - Fixed unordered Log table - Fix notice in Log table for deleted comments Improvements - Various optimisations to SQL query to retrieve logs - Sign-up types in Log table are now translatable 2.2.1 - July 6, 2014 Improvements - Code improvements: Decreased memory usage, lower runtime and optimized functions - Various improvements to AJAX JavaScript - Improved layout of line toggles on Reports page - Better visibility of form ID's throughout admin pages Additions - Added {language} text variable - Add CF7 help text to Checkboxes page 2.2 - July 1, 2014 Fixes - Preview URL not changing when selecting different forms - `Show generated CSS` button not working - Double sign-ups for checkbox integrations Improvements - Reset label position for in checkbox stylesheet - Reset form width for some themes that set a fixed width on all form elements - Send fixed URL for license activation requests - Improve readability of generated CSS and show version number in it - Make sure CSS color values start with # - Improved default success message Additions - Introduce filter `mc4wp_disable_logging` to disable logging 2.1.5 - June 13, 2014 Fixed - Fix fatal error when using `mc4wp_checkbox()` function - No more double API request when integrating with Contact Form 7 - CSS Builder form preview now works with HTTPS WP Admin as well Improvements - Various checkbox integration improvements - Various CSS improvements to colored form themes - Required CSS classes can no longer be accidentally removed - Method that loads AJAX scripts is now public 2.1.4 - June 2, 2014 Fixed - Slashes breaking required CHOICE fields 2.1.3 - May 26, 2014 Fixed - MultiSite network activated plugins not being able to activate their license - Fixed various output issues Improvements - Added license key to support email - Prevent JavaScript error for sites where jquery-forms is not properly loaded 2.1.2 - May 22, 2014 Fixed - Too few arguments for printf function in Email Copy function. Added - Plugin will now show warning when required fields are missing from the form mark-up. Updated - Spanish translations 2.1.1 - May 18, 2014 Added - Plugin now checks if form contains an EMAIL field and submit button. - Spanish translations Improvements - More translatable strings - Updated translations 2.1 - April 28, 2014 Added: - Support for Captcha fields using the BWS Captcha plugin - The plugin admin pages are now translatable - Dutch translations - The anti-spam honeypot is now added to the sign-up checkbox as well. Improvements: - Plugin is now serving static CSS files instead of serving CSS over PHP - Various code improvements - Better CSS reset for the various form themes to increase theme compatibility 2.0.6 - April 23, 2014 - Improved saving of the custom stylesheet. Now using native wp_upload_bit function. 2.0.5 - April 21, 2014 - Fixed notices messing with AJAX response when error debugging is enabled 2.0.4 - April 14, 2014 - Fixed: Install function not running on plugin activation - Fixed: Inline CSS printed where it should be returned instead. Now printing in footer. 2.0.3 - April 10, 2014 - Fixed: Form stylesheets not working 2.0.2 - April 9, 2014 - Fixed: Various errors in the form preview showing up when using WooCommerce - Fixed: Slow backend when connections to dannyvankooten.com fail. - Improved: Better CSS validation on CSS Builder values - Improved: License manager upgrade 2.0.1 - April 3, 2014 - Fixed: Invalid post type 'mc4wp-form' when creating a new form 2.0 - April 2, 2014 - Fixed: make sure template functions are available when using Avia Layout Builder - Fixed: Various CSS Builder fixes and improvements - Fixed: Possible fix for font-rendering issue in some Chrome versions when using AJAX - Improved: Refactored various Checkbox integrations into their own classes - Improved: Implemented autoloader - Improved: Various licensing improvements - Improved: Updated Placeholder polyfill 1.99.4 - March 19, 2014 - Fixed link issue to CSS Builder tab - Minor form class improvements - Fixed BIRTHDAY field format (mm/dd) 1.99.3 - March 15, 2014 - Fixed issue with special characters in group names - Improved loading of plugin files - Improved code and documentation - Improved error messages when API calls fail (up to HTTP level) - Improved first- and lastname guessing - Improved: form tags are now automatically stripped from form content - Improved cached data table - Added error code to mc4wp_form_error_message filter - Added option to set email_type from HTML - Added: email addresses are now stored in a cookie after successful sign-ups 1.99.2 - March 11, 2014 - Some form designer fixes - Fixed honeypoy textarea showing in some themes 1.99.1 - March 3, 2014 - Changed email copy receiver input field type to 'text' 1.99 - February 28, 2014 - Fixed: Display value not working in Form Designer - Improved: Switched to new Licensing class 1.98.9 - February 25, 2014 - Fixed: field generator only generating `text` fields 1.98.8 - February 22, 2014 - Fixed: WooCommerce checkout opt-in - Fixed: "Add to form mark-up" button not working with CKEditor for WordPress - Improved: Cleaned-up Admin JS - Improved: You can now use `[mc4wp_checkbox]` inside your CF7 email templates - Improved: You can now add `default:1` or `default:0` to the CF7 shortcode to check or uncheck the sign-up checkbox. - Improved: Plugin will now working with custom plugin folder names as well 1.98.7 - February 10, 2014 - Fixed: Custom Form Styles - Added: Form width option to custom form styles - Added: You can now have select boxes as a list choice 1.98.6 - February 9, 2014 - Improved: Improved direct file access security - Improved: Now using native WP function to catch SSL requests - Improved: Changed call method in API class to public. - Added: Filter to edit the required capability to access settings pages - Added: Filter to edit form action - Added: Filters to allow extra form validation, like a captcha field. - Added: Added get_member_info and list_has_subscriber method to API class. - Added: List choice field so visitors can choose which list to subscribe to 1.98.5 - January 20, 2014 - Added: You can customize the email address to send an email copy to 1.98.4 - January 9, 2014 - Fixed: CSS Custom Form Styling tab will now remember label font color. 1.98.3 - January 7, 2014 - Fixed a bug with www-hosts - Added option to send an email copy - Scroll to form now waits for full page load - Getting MailChimp data now caches every step, for slow servers. 1.98.2 - December 23, 2013 - Fixed a bug with W3 Total Cache default Minify settings. 1.98.1 - December 17, 2013 - Code improvements - Better script loading - When not using AJAX, fields will stay populated - BIRTHDAY and ADDRESS improvements - Fixed a CSS rule when using the custom form styles - Added label width to custom form styling tab 1.97 - December 9, 2013 - Fixed: Double activation calls where the second disables the first one - Improved: Scroll to form element when AJAX is disabled. - Improved: Code refactoring - Improved: Upped cache lifetime of CSS file to 1 year - Improved: Settings pages now more usable on small screens 1.961 - November 26, 2013 - Fixed: Checkbox subscriptions - Improved: now passes form ID to mc4wp_before_subscribe filter. - Improved: default checkbox CSS - Improved: various usability improvements - Added: 4kb JavaScript fallback for placeholder attributes in old browsers (<= IE9) - Added: plugin will now show error for administrators even when using AJAX. 1.94 - November 20, 2013 - Improved: licensing changes. - Fixed: deleting a single item from the log - Added: more filters and action hooks while processing a form. 1.93 - November 14, 2013 - Added: filter to override lists before sending request to MailChimp - Fixed: requests with groupings failing on some servers - Improved: various improvements to the custom form styling tab. 1.91 - October 27, 2013 - Fixed CSS selector prefix not properly being saved in Custom Form Styling 1. 90 - October 23, 2013 - Added: default form styles to choose from - Added: custom color theme - Added: delay before redirecting when using AJAX. - Improved: auto-select form when upgrading from Lite - Improved: Field wizard now defaults to wrap in paragraph tags - Improved: some usability improvements - Improved: many improvements to form designer / custom styles creator 1.84 - October 22, 2013 - Added support for groupings in third party forms 1.83, October 20, 2013 - Fixed: bug when calling MailChimp API for PHP 5.2 - Improved: Detecting of local development environment - Improved: Better default form CSS stylesheet - Improved: Combined checkbox & form stylesheets + encouraged browser caching. - Removed: Edit form links after forms for administrators 1.82 - October 17, 2013 - Added: Line graphs (Reports) for each individual sign-up form - Added: Toggle line graphs (Reports) - Added: you can now override the default AJAX loader using CSS by targeting `.mc4wp-ajax-loader` - Improved: AJAX Forms JavaScript for IE8 1.81 - Improved: Added and remove some buttons from QuickTags form editor - Improved: Added user_name to name fields for third-party forms integration (Events Manager Pro) - Improved: Reports now show source for form and checkbox sign-ups, log entries have been batched for multiple lists - Improved: Removed WordPress SEO Metabox from edit form screen. - Improved: Updates & license checks now use a secure connection - Added: Filter to form content so plugins can alter form mark-up - Added: Local license so single-site license can run on multiple environments 1.80 - Fixed: choices (dropdowns and radio buttons) not available in field wizard - Added: option to prefix CSS selector for custom CSS - Added: CSS media queries to admin settings - Added: Version number to assets on frontend (to prevent cache errors) - Added: Accept-Encoding header for remote requests, prevent encoding issues on some servers - Added: Widget to make showing a form in widget areas easier - Added: Animated scroll for non-AJAX forms - Improved: default form CSS

1.70 - 1.74

- Fixed list field merge vars when integrating with third-party plugins like Contact Form 7 - Improved: cleared output before returning AJAX results, stops other plugins from breaking your forms. - Improved: various usability and code improvements - Improved: default form CSS - Improved: only show debug message in non-AJAX requests - Added: CSS Customizer, build a customized CSS stylesheet to style your forms from your admin panel. No CSS knowledge required! - Added: option to send welcome e-mail after using sign-up checkbox with double opt-in disabled - Added: {subscriber_count} to use in form mark-up. Shows the subsciber counts of the selected list(s) for that form. - Added: ability to show generated CSS when wp-content is not writable.

1.60 - 1.61

- Added: Total revamp of the field wizard, many improvements! - Added: sign-up checkbox debug message for WP Administrators - Improved: various usability improvements - Fixed: email support link + signs - Fixed: transfer of lite v1.2+ settings to pro

1.50 & 1.51

- Fixed Contact Form 7 custom checkbox label - Fixed label functionality when more than 1 sign-up checkbox per page - Added: total sign-ups overview to statistics - Added: update existing subscribers option - Added: replace interests option - Added: send welcome email option - Added: search to subscribers log - Added: delete to subscribers log - Added: statistics charts - Improved: AJAX forms now work with FORCE_ADMIN_SSL set to true as well. - Improved: responsiveness of setting pages - Improved: enabled logging by default

1.40 - 1.42

- Fixed empty checkbox label text after first save. - Fixed: notice undefined index 'edd_checkout' - Added: nice name for various subscribe methods in subscribers log - Added: the database log table will now be removed when uninstalling the plugin - Added: integration with WooCommerce checkout form - Added: integration with bbPress - Added: possibility to change checkbox label texts for each individual sign-up checkbox hook. - Improved: automatic remote deactivating of license upon plugin deactivation, to allow licen se activation on different URL. (test environment / production environment for example) - Improved AJAX spinner CSS - Improved form submit function, field names are case insensitive again - Improved: Lite settings are no longer overwriting Pro settings when switching between plugins. - Improved: Better compatibility with third-party registration form plugins. - Improved: Usability improvements - Improved: Checkbox label now wraps checkbox input element - Improved: Checkbox default CSS

1.30 - 1.33

- Fixed: interest groupings now work with new MailChimp API. - Fixed: AJAX enabled but JavaScript disabled now shows feedback again. - Fixed spam comments not being filtered - Fixed: checkbox shortcode for Contact Form 7 - Fixed: checkbox in other forms - Fixed colon after placeholder - Added groupings and groups to field wizard - Added form markup transfer from Lite upon activation - Added: {current_url} and {time} to form variables - Added subscriber log - Added: merge field support for third-party forms, use mc4wp- prefix. - Added: integration with Easy Digital Downloads checkout form - Improved: field wizard now wraps checkboxes and radio inputs with label element. - Improved integration with Contact Form 7 - Improved integration with third-party forms - Improved: showed sign-up forms on form settings page, no need for separate page - Improved: showed warning message in overview when no lists selected - Improved code, less memory usage. - Improved default form and checkbox CSS - Improved now using MailChimp API version 2.0 - Improved removed MailChimp API wrapper, now using WordPress HTTP API.