summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorDavid Rothstein <drothstein@gmail.com>2015-03-30 23:09:35 -0400
committerDavid Rothstein <drothstein@gmail.com>2015-03-30 23:09:35 -0400
commitfc31045bbeb1c7f6332c133315f038bf14f028d3 (patch)
tree2a2beaa818d9355f1fc5395e1a265aa4db091b6a /modules
parentf41ecaf25d7a38923e026ef45a74dffaf58f9479 (diff)
downloadbrdo-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')
-rw-r--r--modules/file/file.module10
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;