Plugin / WCAG 2.0 form fields for Gravity Forms

Adrian Gordon

Changelog

Changelog

1.7.2

  • Fix: resolve conflict with Gravity Forms 2.4.7 “Added accessibility enhancements”. The combination of this plugin and Gravity Forms 2.4.7 or higher would break the list field add and remove buttons
  • Maintenance: improved targetting for making links in forms open in a new window

1.7.1

  • Fix: Improve PHP 7.2 compatibility – use ‘__return_false’ instead of create_function

1.7.0

  • Maintenance: review targeting for field changes and what changes are made to fields.
  • Maintenance: removed unnecessary changes that GravityForms now natively does.

1.6.0

  • Fix: make radio ‘other’ option accessible by applying hidden label to both the radio and input fields.
  • Maintenance: remove redundant aria-required changes, now provided natively in Gravity Forms.
  • Maintenance: Change how plugin detects if Gravity Forms is installed and active.

1.5.1

  • Fix: resolve issue with radio field ‘other’ option displaying inconsistently.
  • Fix: resolve issue with validation (error) message not correctly display the number and list of failed fields.

1.5.0

  • Maintenance: Updates for Gravity Forms 2+
  • Maintenance: Move JavaScript from footer to separate file
  • Maintenance: Add minified copies of JavaScript and CSS files

1.4.6

  • Fix: Add support for left and right label placement
  • Maintenance: Move JavaScript out of page footer to its own file.
  • Maintenance: Move CSS file to \css\ plugin directory.

1.4.5

  • Maintenance: Updates to better support translation.
  • Maintenance: General tidy up of code, working towards WordPress standards.

1.4.4

  • Fix: Resolve issue with radio fields not being wrapped in a fieldset.
  • Fix: Remove default Gravity Forms validation message from appearing (‘There was a problem with your submission. Errors have been highlighted below.’).
  • Fix: Resolve issue with field HTML changes not applying when the label contains an HTML encodable character, e.g. a quote (‘).
  • Fix: Resolve issue with list of linked errors in validation message when an error message contained a link.
  • Maintenance: Enqueue JavaScript later to help ensure it does not load before jQuery has loaded.

1.4.3

  • Fix: Resolve issue with loading entry ‘Print’ page.
  • Fix: Resolve ‘$_SERVER[‘HTTP_REFERER’] undefined’ error message which appeared in limit circumstances.
  • Maintenance: Changed several ‘else’ statements to ‘elseif’ to provide a very slight improvement with the PHP execution time.
  • Maintenance: Pass translatable text in JavaScript function through json_encode() to prevent potential security issues through a XSS (cross site scripting) exploit. This is a security precaution.
  • Maintenance: Added blank index.php file to plugin directory to ensure directory browsing does not occur. This is a security precaution.
  • Maintenance: Added ABSPATH check to plugin PHP files to ensure PHP files cannot be accessed directly. This is a security precaution.

1.4.2

  • Fix: Resolve issue with ‘Save and Continue Later’ link opening a new blank window.

1.4.1

  • Maintenance: Refining code responsible for wrapping the name field in a fieldset.

1.4.0

  • Fix: Resolve additional close fieldset on single file upload fields.
  • Fix: Resolve issue with aria-described by applying on date fields.
  • Feature: Name field now wrapped in a fieldset.
  • Feature: Email field now wrapped in a fielset when ‘Enable Email Confirmation’ enabled.
  • Feature: Address field now wrapped in a fieldset.
  • Feature: Added action hook to disable tabindex=-1 on validation error message.

1.3.0

  • FEATURE: Add support for multisite WordPress installations.

1.2.11

  • Maintenance: change plugin name from ‘Gravity Forms – WCAG 2.0 form fields’ to ‘WCAG 2.0 form fields for Gravity Forms’
  • Maintenance: change constructor so plugin load is delayed using the ‘plugins_loaded’ action – this ensures the plugin loads after Gravity Forms has loaded and functions correctly.
  • Maintenance: resolve various PHP errors that were appearing in debug mode, but did not affect functionality.

1.2.10

  • Fix: change field layout for radio and checkboxes to allow a checkbox/radio field to not use a fieldset if only one option exists.

1.2.9

  • Fix: resolve undeclared variable issue in fieldset conditions (change $fieldtype to $field_type).
  • Fix: resolve issue with radio fields incorrectly being marked as required – each item in the radio field was being marked as required (using aria-required=true) when only the fieldset should have been. Reference: http://stackoverflow.com/questions/8509481/aria-required-in-a-radio-group= 1.2.8
  • Fix: resolve issue with radio field ‘other’ option not including a label. Added screen-reader only labels for radio and input field assigned to ‘other’ option.
  • Fix: resolve issue with jQuery script loading before jQuery was available. Moved to footer using wp_footer action.

1.2.8

  • Feature: add condition to exclude links with a class of ‘target-self’ from opening in a new window.

1.2.7

  • Fix: fixed error in code for date field – resulting in on screen PHP error messages or the field not appearing.

1.2.6

  • Feature: field description now included in a fields ‘aria-describedby’ attribute – giving screen reader users easy access to the fields description when jumping through fields and skipping page content.
  • Feature: wrap single file upload field in a field set – providing screen reader users with the label of the upload field – instead of hearing ‘browse’ they will hear the title of the field followed by ‘file upload’
  • Feature: add ‘accept’ attribute to single file upload field, providing screen reader users a list of accepted file types when they select the file upload fields
  • Feature: add screen reader only text below single file upload fields, providing screen readers users a human understandable description of the file type and file size restrictions placed on the field (if specified for the field)
  • Maintenance: removed HTML ‘required’ attribute that was being applied by plugin – this was causing issues. Will be restored once this has been resolved. aria-required still applied to required fields, which is widely supported by assistive technologies.

1.2.5

  • ** REMOVED ** Feature: change ‘Save and continue’ link to a button. This provides better accessibility by providing ‘Save and continue’ as a form field – making it listed along side with the ‘Previous’, ‘Next’ and ‘Submit’ buttons when a screen reader user lists all form fields. e.g. JAWS + F5.

1.2.4

  • Fix: required checkbox and radio fields missing ‘required’ asterisk since version 1.2.2.

1.2.3

  • Feature: links in form body, such as field descriptions or HTML fields, will be made to open in a new window. A title is added or appended to any existing title for screen reader users which reads ‘this link will open in a new window’.

1.2.2

  • Enqueue stylesheet instead of directly printing to page.
  • Replace i18n slug with slug string instead of class reference.
  • Fix text strings for internationalization.
  • Fix bug with failing to be inserted.
  • Add ARIA live attribute to form validation error
  • Remove JS alert to avoid redundant notifications with ARIA

1.2.1

  • Fix: added condition so that ‘required’ attributes are only added for fields on current page.

1.2.0

  • Fix: changed links in validation message to be relative to the current page – allowing the links to work regardless of where the form is being loaded
  • Fix: changed validation alert so that HTML ‘new line’
    is replaced with JavaScript ‘new line’ /n
  • Fix: added condition to column and field changing functions so that they only function on the front end – not in the Gravity Forms forms builder
  • Maintenance: improved how date format instructions are built.
  • Feature: ‘list’ field image buttons (add new row, delete row) are not keyboard accessible. Added to to replace with actual buttons they are keyboard accessible.
  • Feature: add aria-describedby for website field – ‘enter a valid website URL for example http://www.google.com’
  • Fix: un-did ‘required’ attribute for checkbox field – it unduly made ALL checkboxes required, rather than just one.
  • Maintenance: moved CSS to its own file.

1.1.0

  • Feature: added aria-describedby for date fields – providing screen reader users with the instructions on how to type into the field, for example ‘must be dd/mm/yyyy format’
  • Feature: added screen reader only words for required fields – providing screen reader users with the word ‘required’ in addition to the default star
  • Feature: added aria-describedby for fields that have failed validation – making it easier for screen reader users to determine why a field has failed validation
  • Feature: improved validation message. Message now reads ‘There were 2 errors found in the information you submitted.’ and is followed by a list of each field that did not pass validation. Each item in the list is a clickable link, taking the user directly to the field.
  • Feature: added browser alert if form did not pass validation. If the form did not pass validation, the first thing the user should see or hear is ”There were 2 errors found in the information you submitted.’ followed by the list of errors. When the user clicks past the alert the browsers focus is taken to the on screen validation message and links to errors.

1.0.3

  • Maintenance: fix php closing tag to resolve version number not appearing in WordPress Plugin Directory.

1.0

  • First public release.

Ratings

5
10 reviews

Rating breakdown

Details Information

Version

1.7.2

First Released

28 Jan, 2015

Total Downloads

29,286

Wordpress Version

5.0 or higher

Tested up to:

5.1.3

Require PHP Version:

-

Tags

Contributors

Languages

DIRECTORY DISCLAIMER

The information provided in this THEME/PLUGIN DIRECTORY is made available for information purposes only, and intended to serve as a resource to enable visitors to select a relevant theme or plugin. wpSocket gives no warranty of any kind, express or implied with regard to the information, including without limitation any warranty that the particular theme or plugin that you select is qualified on your situation.

The information in the individual theme or plugin displayed in the Directory is provided by the owners and contributors themselves. wpSocket gives no warranty as to the accuracy of the information and will not be liable to you for any loss or damage suffered by you as a consequence of your reliance on the information.

Links to respective sites are offered to assist in accessing additional information. The links may be outdated or broken. Connect to outside sites at your own risk. The Theme/Plugin Directory does not endorse the content or accuracy of any listing or external website.

While information is made available, no guarantee is given that the details provided are correct, complete or up-to-date.

wpSocket is not related to the theme or plugin, and also not responsible and expressly disclaims all liability for, damages of any kind, arising out of the use, reference to, or reliance on, any information or business listed throughout our site.

Keep Leading Your Followers!
Share it for them.