public static function PluginBase::preRenderFlattenData in Drupal 8
Same name and namespace in other branches
- 9 core/modules/views/src/Plugin/views/PluginBase.php \Drupal\views\Plugin\views\PluginBase::preRenderFlattenData()
Flattens the structure of form elements.
If a form element has #flatten = TRUE, then all of its children get moved to the same level as the element itself. So $form['to_be_flattened'][$key] becomes $form[$key], and $form['to_be_flattened'] gets unset.
Parameters
array $form: The form build array to alter.
Return value
array The form build array.
Overrides ViewsPluginInterface::preRenderFlattenData
File
- core/
modules/ views/ src/ Plugin/ views/ PluginBase.php, line 502
Class
- PluginBase
- Base class for any views plugin types.
Namespace
Drupal\views\Plugin\viewsCode
public static function preRenderFlattenData($form) {
foreach (Element::children($form) as $key) {
$element = $form[$key];
if (!empty($element['#flatten'])) {
foreach (Element::children($element) as $child_key) {
$form[$child_key] = $form[$key][$child_key];
}
// All done, remove the now-empty parent.
unset($form[$key]);
}
}
return $form;
}