RenderElement::processGroup

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.

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 435

Class

RenderElement
Provides a base class for render element plugins.

Namespace

Drupal\Core\Render\Element

Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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;
}
doc_Drupal
2025-01-10 15:47:30
Comments
Leave a Comment

Please login to continue.