function rules_forms_add_element_id in Rules 6
Add element IDs as prefix/suffix code to all form elements.
1 call to rules_forms_add_element_id()
- rules_forms_after_build in rules_forms/
rules_forms.module - Add element IDs on the form if the setting is enabled. Add submit and validation callbacks to form, buttons, etc. to invoke corresponding events.
File
- rules_forms/
rules_forms.module, line 98 - Rules forms module.
Code
function rules_forms_add_element_id(&$form, $parent = '') {
$bracket = $parent === '' ? '' : ']';
foreach (element_children($form) as $key) {
if (isset($form[$key]['#type'])) {
if ($form[$key]['#type'] === 'hidden' || $form[$key]['#type'] === 'token') {
$element_id = '<div class="rules_forms_element_id">' . t('Hidden element ID: %elem', array(
'%elem' => $parent . $key . $bracket,
)) . '</div>';
}
else {
$element_id = '<div class="rules_forms_element_id">' . t('Element ID: %elem', array(
'%elem' => $parent . $key . $bracket,
)) . '</div>';
}
$form[$key]['#suffix'] = isset($form[$key]['#suffix']) ? $form[$key]['#suffix'] . $element_id : $element_id;
}
else {
$element_id = '<div class="rules_forms_element_id">' . t('Container element ID: %elem', array(
'%elem' => $parent . $key . $bracket,
)) . '</div>';
$form[$key]['#prefix'] = isset($form[$key]['#suffix']) ? $form[$key]['#suffix'] . $element_id : $element_id;
}
// recursive call on children
rules_forms_add_element_id($form[$key], $parent . $key . $bracket . '[');
}
}