public static function RenderElement::processGroup in Drupal 9
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/Render/Element/RenderElement.php \Drupal\Core\Render\Element\RenderElement::processGroup()
- 10 core/lib/Drupal/Core/Render/Element/RenderElement.php \Drupal\Core\Render\Element\RenderElement::processGroup()
Arranges elements into groups.
This method is useful for non-input elements that can be used in and outside the context of a form.
Parameters
array $element: An associative array containing the properties and children of the element. Note that $element must be taken by reference here, so processed child elements are taken over into $form_state.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
array $complete_form: The complete form structure.
Return value
array The processed element.
File
- core/
lib/ Drupal/ Core/ Render/ Element/ RenderElement.php, line 436
Class
- RenderElement
- Provides a base class for render element plugins.
Namespace
Drupal\Core\Render\ElementCode
public static function processGroup(&$element, FormStateInterface $form_state, &$complete_form) {
$parents = implode('][', $element['#parents']);
// Each details element forms a new group. The #type 'vertical_tabs' basically
// only injects a new details element.
$groups =& $form_state
->getGroups();
$groups[$parents]['#group_exists'] = TRUE;
$element['#groups'] =& $groups;
// Process vertical tabs group member details elements.
if (isset($element['#group'])) {
// Add this details element to the defined group (by reference).
$group = $element['#group'];
$groups[$group][] =& $element;
}
return $element;
}