function template_preprocess_bef_hidden in Better Exposed Filters 8.4
Same name and namespace in other branches
- 8.5 includes/better_exposed_filters.theme.inc \template_preprocess_bef_hidden()
- 8.3 better_exposed_filters.module \template_preprocess_bef_hidden()
Prepares variables for bef-hidden template.
Default template: bef-hidden.html.twig.
Parameters
array $variables: An associative array containing:
- element: An associative array containing the exposed form element.
File
- includes/
better_exposed_filters.theme.inc, line 147 - Theme hooks, preprocessor, and suggestions.
Code
function template_preprocess_bef_hidden(array &$variables) {
$element = $variables['element'];
// This theme function is only used for multi-select elements.
$variables['is_multiple'] = TRUE;
$variables['selected'] = empty($element['#value']) ? $element['#default_value'] : $element['#value'];
$variables['hidden_elements'] = [];
foreach ($element['#options'] as $value => $label) {
$variables['hidden_elements'][$value] = [
'#type' => 'hidden',
'#value' => $value,
'#name' => $element['#name'] . '[]',
];
}
// @todo
// Check for optgroups. Put subelements in the $element_set array and add a
// group heading. Otherwise, just add the element to the set.
// $element_set = array();
// if (is_array($elem)) {
// $element_set = $elem;
// }
// else {
// $element_set[$option] = $elem;
// }
}