Issue #1421410 by andypost, Niklas Fiekas: Fixed not defined in form_pre_render_conditional_form_element().
parent
ec36276c4e
commit
6c4381e1c1
|
@ -2808,6 +2808,9 @@ function theme_radios($variables) {
|
||||||
if (!empty($element['#attributes']['class'])) {
|
if (!empty($element['#attributes']['class'])) {
|
||||||
$attributes['class'] .= ' ' . implode(' ', $element['#attributes']['class']);
|
$attributes['class'] .= ' ' . implode(' ', $element['#attributes']['class']);
|
||||||
}
|
}
|
||||||
|
if (isset($element['#attributes']['title'])) {
|
||||||
|
$attributes['title'] = $element['#attributes']['title'];
|
||||||
|
}
|
||||||
return '<div' . drupal_attributes($attributes) . '>' . (!empty($element['#children']) ? $element['#children'] : '') . '</div>';
|
return '<div' . drupal_attributes($attributes) . '>' . (!empty($element['#children']) ? $element['#children'] : '') . '</div>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3070,6 +3073,9 @@ function theme_checkboxes($variables) {
|
||||||
if (!empty($element['#attributes']['class'])) {
|
if (!empty($element['#attributes']['class'])) {
|
||||||
$attributes['class'] = array_merge($attributes['class'], $element['#attributes']['class']);
|
$attributes['class'] = array_merge($attributes['class'], $element['#attributes']['class']);
|
||||||
}
|
}
|
||||||
|
if (isset($element['#attributes']['title'])) {
|
||||||
|
$attributes['title'] = $element['#attributes']['title'];
|
||||||
|
}
|
||||||
return '<div' . drupal_attributes($attributes) . '>' . (!empty($element['#children']) ? $element['#children'] : '') . '</div>';
|
return '<div' . drupal_attributes($attributes) . '>' . (!empty($element['#children']) ? $element['#children'] : '') . '</div>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3079,6 +3085,7 @@ function theme_checkboxes($variables) {
|
||||||
* This is used as a pre render function for checkboxes and radios.
|
* This is used as a pre render function for checkboxes and radios.
|
||||||
*/
|
*/
|
||||||
function form_pre_render_conditional_form_element($element) {
|
function form_pre_render_conditional_form_element($element) {
|
||||||
|
$t = get_t();
|
||||||
// Set the element's title attribute to show #title as a tooltip, if needed.
|
// Set the element's title attribute to show #title as a tooltip, if needed.
|
||||||
if (isset($element['#title']) && $element['#title_display'] == 'attribute') {
|
if (isset($element['#title']) && $element['#title_display'] == 'attribute') {
|
||||||
$element['#attributes']['title'] = $element['#title'];
|
$element['#attributes']['title'] = $element['#title'];
|
||||||
|
|
|
@ -703,6 +703,12 @@ class FormsElementsLabelsTestCase extends DrupalWebTestCase {
|
||||||
|
|
||||||
$elements = $this->xpath('//div[@id="form-test-textfield-title-suffix"]/preceding-sibling::div[contains(@class, \'form-item-form-textfield-test-title\')]');
|
$elements = $this->xpath('//div[@id="form-test-textfield-title-suffix"]/preceding-sibling::div[contains(@class, \'form-item-form-textfield-test-title\')]');
|
||||||
$this->assertTrue(isset($elements[0]), t("Properly places the #suffix element before the form item."));
|
$this->assertTrue(isset($elements[0]), t("Properly places the #suffix element before the form item."));
|
||||||
|
|
||||||
|
// Check title attribute for radios and checkboxes.
|
||||||
|
$elements = $this->xpath('//div[@id="edit-form-checkboxes-title-attribute"]');
|
||||||
|
$this->assertEqual($elements[0]['title'], 'Checkboxes test' . ' (' . t('Required') . ')', 'Title attribute found.');
|
||||||
|
$elements = $this->xpath('//div[@id="edit-form-radios-title-attribute"]');
|
||||||
|
$this->assertEqual($elements[0]['title'], 'Radios test' . ' (' . t('Required') . ')', 'Title attribute found.');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -791,10 +791,31 @@ function form_label_test_form() {
|
||||||
'#title' => t('Textfield test for invisible title'),
|
'#title' => t('Textfield test for invisible title'),
|
||||||
'#title_display' => 'invisible',
|
'#title_display' => 'invisible',
|
||||||
);
|
);
|
||||||
// Textfield test for title set not to display
|
// Textfield test for title set not to display.
|
||||||
$form['form_textfield_test_title_no_show'] = array(
|
$form['form_textfield_test_title_no_show'] = array(
|
||||||
'#type' => 'textfield',
|
'#type' => 'textfield',
|
||||||
);
|
);
|
||||||
|
// Checkboxes & radios with title as attribute.
|
||||||
|
$form['form_checkboxes_title_attribute'] = array(
|
||||||
|
'#type' => 'checkboxes',
|
||||||
|
'#title' => 'Checkboxes test',
|
||||||
|
'#options' => array(
|
||||||
|
'first-checkbox' => 'First checkbox',
|
||||||
|
'second-checkbox' => 'Second checkbox',
|
||||||
|
),
|
||||||
|
'#title_display' => 'attribute',
|
||||||
|
'#required' => TRUE,
|
||||||
|
);
|
||||||
|
$form['form_radios_title_attribute'] = array(
|
||||||
|
'#type' => 'radios',
|
||||||
|
'#title' => 'Radios test',
|
||||||
|
'#options' => array(
|
||||||
|
'first-radio' => 'First radio',
|
||||||
|
'second-radio' => 'Second radio',
|
||||||
|
),
|
||||||
|
'#title_display' => 'attribute',
|
||||||
|
'#required' => TRUE,
|
||||||
|
);
|
||||||
|
|
||||||
return $form;
|
return $form;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue