public static RenderElement::processGroup(&$element, FormStateInterface $form_state, &$complete_form)
Arranges elements into groups.
This method is useful for non-input elements that can be used in and outside the context of a form.
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.
array The processed element.
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; }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Render!Element!RenderElement.php/function/RenderElement::processGroup/8.1.x