diff options
author | David Rothstein <drothstein@gmail.com> | 2015-03-30 23:09:35 -0400 |
---|---|---|
committer | David Rothstein <drothstein@gmail.com> | 2015-03-30 23:09:35 -0400 |
commit | fc31045bbeb1c7f6332c133315f038bf14f028d3 (patch) | |
tree | 2a2beaa818d9355f1fc5395e1a265aa4db091b6a /modules/file | |
parent | f41ecaf25d7a38923e026ef45a74dffaf58f9479 (diff) | |
download | brdo-fc31045bbeb1c7f6332c133315f038bf14f028d3.tar.gz brdo-fc31045bbeb1c7f6332c133315f038bf14f028d3.tar.bz2 |
Issue #1734716 by larowlan, dcam, mgifford: Managed file form label has incorrect "for" attribute
Diffstat (limited to 'modules/file')
-rw-r--r-- | modules/file/file.module | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/modules/file/file.module b/modules/file/file.module index a4a7f03d9..1d5e5698f 100644 --- a/modules/file/file.module +++ b/modules/file/file.module @@ -357,6 +357,10 @@ function file_file_delete($file) { * support for a default value. */ function file_managed_file_process($element, &$form_state, $form) { + // Append the '-upload' to the #id so the field label's 'for' attribute + // corresponds with the file element. + $original_id = $element['#id']; + $element['#id'] .= '-upload'; $fid = isset($element['#value']['fid']) ? $element['#value']['fid'] : 0; // Set some default element properties. @@ -366,7 +370,7 @@ function file_managed_file_process($element, &$form_state, $form) { $ajax_settings = array( 'path' => 'file/ajax/' . implode('/', $element['#array_parents']) . '/' . $form['form_build_id']['#value'], - 'wrapper' => $element['#id'] . '-ajax-wrapper', + 'wrapper' => $original_id . '-ajax-wrapper', 'effect' => 'fade', 'progress' => array( 'type' => $element['#progress_indicator'], @@ -461,13 +465,13 @@ function file_managed_file_process($element, &$form_state, $form) { $element['upload']['#attached']['js'] = array( array( 'type' => 'setting', - 'data' => array('file' => array('elements' => array('#' . $element['#id'] . '-upload' => $extension_list))) + 'data' => array('file' => array('elements' => array('#' . $element['#id'] => $extension_list))) ) ); } // Prefix and suffix used for Ajax replacement. - $element['#prefix'] = '<div id="' . $element['#id'] . '-ajax-wrapper">'; + $element['#prefix'] = '<div id="' . $original_id . '-ajax-wrapper">'; $element['#suffix'] = '</div>'; return $element; |