Gravity Forms v1.9.14 Released
By Carl Hancock Published October 7, 2015Gravity Forms v1.9.14 is now available via automatic update and the downloads page.
This is a major maintenance and developer focused release and includes new hooks/filters, updates to the Gravity Forms Add-On Framework and the Gravity Forms API.
This release also includes updates to make it compatible with new Gravity Forms Add-Ons that are nearing public release.
What’s New in Gravity Forms v1.9.14
- Added $support_placeholders parameter to GFCommon::get_select_choices() method.
- Added gf_input_change() JS function.
- Added action-based system to conditional_logic.js; new method will trigger conditional logic from generic ‘gform_input_change’ event. Allows more granular control of the order in which input-change-event-based functionality (i.e. conditional logic) is triggered.
- Added ‘fields’ property to gf_form_conditional_logic JS object. Used to determine field’s with conditional logic dependent on the current field. This differs from the ‘dependents’ property in that the dependents property refers to fields that should be shown/hidden based on a “parent” field (i.e. fields within a Section Break).
- Added new JS helper functions: rgar() and rgars(); work just like their PHP counterparts.
- Added field type specific classes to input containers.
- Added Gravity API client class to support requests to remote Gravity server.
- Added gform_forms_post_import action.
- Added gform_currency_pre_save_entry filter allowing entry currency code to be overridden.
- Added extra parameter to GFCache::get() to optimize performance for non persistent cache gets.
- Added gform_is_encrypted_field hook to allow custom logic to check if a field is encrypted as well as disabling encryption checking.
- Added GFCommon::safe_strtoupper. Uses mb_strtoupper if available; with a fallback to strtoupper.
- Added tabindex and onkeypress attributes to list field add/delete row buttons.
- Added the gform_pre_entry_list and gform_post_entry_list action hooks to the entry list page. $form_id is the only parameter.
- Added gform_product_field_types filter to support custom product fields.
- Added the tabindex attribute to the button input of the multi-file enabled upload field.
- Added Bengali translation, thanks to Md Akter Hosen.
- Added a deactivation hook to flush the Gravity Forms Cache including persistent transients. This provides a workaround for a rare issue on WordPress 4.3 where Gravity Forms user locks are not released automatically on some systems.
- Added payment_method to the lead database columns list.
- Added security enhancements to the entry export process to prevent a spreadsheet related exploit. This is not a WordPress vulnerability. You can find out details here. Thanks to Zach and the team at WP Ninjas for the heads up!
- Updated ‘gform_conditional_logic’ script to depend on ‘gform_gravityforms’; this is to support a new action-based method for handling functionality that is triggered by input change events (i.e. conditional logic).
- Updated thickbox URLs to include a set height as needed.
- Updated GFFormDisplay::get_form_button() to be a public method.
- Updated GFFormDisplay::get_max_field_id() to be public.
- Updated Website field so placeholder defaults to http:// for new fields.
- Updated jQuery JSON script to v2.5.1.
- Updated the value column of the lead details table to longtext. Affects new installations only. This fixes an issue where searching in fields with long values may not return accurate results.
- Updated German translation, thanks to David Steinbauer.
- Updated the gform_multiselect_placeholder filter to include a field specific version and to include $field as the third parameter.
- Updated gform_save_field_value and gform_get_input_value hooks to trigger form and field specific versions.
- Updated change to Akismet setting in 1.9.13.2 to be properly sanitized.
- Updated the Dutch translation.
- Fixed an issue with conditional logic on number fields formatted with decimal comma.
- Fixed an issue with the gform_replace_merge_tags hook running twice when GFCommon::replace_variables() is used.
- Fixed an issue with GFNotification::get_first_routing_field() not using the array of field types returned by the gform_routing_field_types hook.
- Fixed an issue with the merge tag drop down and the credit card field.
- Fixed an issue with GF_Field_Address::get_country_code which failed to return a value if the passed country contained cyrillic characters.
- Fixed an issue with the List field which could occur if gform_column_input was used to return a comma and space separated string for $input_info[‘choices’].
- Fixed an issue with product field validation.
- Fixed a PHP notice on the confirmations page if confirmation type is not set.
- Fixed an issue when searching for entries that are non-blanks.
- Fixed an issue where entry detail page would save notes to the wrong entry.
- Fixed an issue with the caching of the form meta. This fixes an issue with the export of entries in some cases.
- Fixed an issue with the plugin page not displaying HTML correctly in the upgrade message.
- Fixed an issue with PHP7 list() function with the calculation field.
- Fixed a PHP notice which could occur if a required radio type Product field was submitted without a choice being selected.
- Fixed an issue with empty form validation not taking field conditional logic into account.
- Fixed an issue with the list field values restored by conditional logic when the field is populated by gform_field_value using the new array format.
- Fixed an issue with GFNotification::is_valid_notification_email().
- Fixed an issue with GF_Field_List::get_value_export retrieving the values for the first column when multiple columns enabled.
- Fixed an issue where checkbox values containing ampersands are not correctly exported.
- Fixed issue where form markup was still generated for custom shortcode actions.
- Fixed issue where Akismet setting was showing as “on” when it was “off”.
- Removed style which forced all GF thickbox modals to a height of 400px.
Add-On Framework Updates in Gravity Forms v1.9.14
- Added support for “Entry ID” to field maps.
- Added gform_is_delayed_pre_process_feed filter, including form specific version, to allow feed processing to be delayed.
- Added GFPaymentAddOn::maybe_validate() to check that the honeypot field was not completed before calling GFPaymentAddOn::validation().
- Added entry_list to the page conditions for script loading.
- Updated uses of GFCommon::to_number in GFPaymentAddOn to also pass the entry currency code.
- Updated “select_custom” settings field to only show input field when only select choice is “gf_custom”.
- Updated GFFeedAddon::has_feed() to be a public method.
- Fixed an issue in GFPaymentAddOn::complete_payment where the entry currency was being reset to the currency from the settings page.
API Updates in Gravity Forms v1.9.14
- Added debug statements for logging to the Web API.
- Added the gform_webapi_authentication_required_ENDPOINT filter. Allows overriding of authentication for all the endpoints of the Web API.
- Added support for an array of supported operators per value in the field filters.
- Fixed an issue with GFAddOn::is_entry_list() where filtered results are not supported.
- Fixed a JS error on the API settings page.
- Fixed issue where the data property of the error object was not being populated for the Web API.
- Fixed debug notices.
- Fixed an issue with the API settings page.
You can update to the latest version of Gravity Forms using Automatic Update. Just visit the Updates page under the Forms navigation in your WordPress Dashboard. Update deployment is staged so if you do not see the update available, try again in a few hours. You can also download the latest version of the plugin from the Downloads page.
Don’t own a Gravity Forms Yet? What are you waiting for? Purchase a copy today!