From 1f5cb1a7178aa537199052c95a7fdcaecacbc3a8 Mon Sep 17 00:00:00 2001 From: webchick <webchick@24967.no-reply.drupal.org> Date: Wed, 28 Nov 2012 23:16:36 -0800 Subject: [PATCH] Issue #1645420 by Liam Morland, mgifford: Added Use @aria-describedby for fieldset descriptions. --- core/includes/form.inc | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/core/includes/form.inc b/core/includes/form.inc index 002de6f5c8de..82e1f3db7416 100644 --- a/core/includes/form.inc +++ b/core/includes/form.inc @@ -2795,6 +2795,11 @@ function theme_fieldset($variables) { element_set_attributes($element, array('id')); _form_set_attributes($element, array('form-wrapper')); + if (!empty($element['#description'])) { + $description_id = $element['#attributes']['id'] . '--description'; + $element['#attributes']['aria-describedby'] = $description_id; + } + $output = '<fieldset' . new Attribute($element['#attributes']) . '>'; if (!empty($element['#title'])) { // Always wrap fieldset legends in a SPAN for CSS positioning. @@ -2802,7 +2807,9 @@ function theme_fieldset($variables) { } $output .= '<div class="fieldset-wrapper">'; if (!empty($element['#description'])) { - $output .= '<div class="fieldset-description">' . $element['#description'] . '</div>'; + $attributes = array('class' => 'fieldset-description', 'id' => $description_id); + $output .= '<div' . new Attribute($attributes) . '>' . $element['#description'] . '</div>'; + } $output .= $element['#children']; if (isset($element['#value'])) { -- GitLab