You are here

public static function WebformCompositeBase::processWebformComposite in Webform 8.5

Same name and namespace in other branches
  1. 6.x src/Element/WebformCompositeBase.php \Drupal\webform\Element\WebformCompositeBase::processWebformComposite()

Processes a composite webform element.

2 calls to WebformCompositeBase::processWebformComposite()
WebformLocationBase::processWebformComposite in src/Element/WebformLocationBase.php
Processes a composite webform element.
WebformTelephone::processWebformComposite in src/Element/WebformTelephone.php
Processes a composite webform element.
2 methods override WebformCompositeBase::processWebformComposite()
WebformLocationBase::processWebformComposite in src/Element/WebformLocationBase.php
Processes a composite webform element.
WebformTelephone::processWebformComposite in src/Element/WebformTelephone.php
Processes a composite webform element.

File

src/Element/WebformCompositeBase.php, line 87

Class

WebformCompositeBase
Provides an base composite webform element.

Namespace

Drupal\webform\Element

Code

public static function processWebformComposite(&$element, FormStateInterface $form_state, &$complete_form) {
  if (isset($element['#initialize'])) {
    return $element;
  }
  $element['#initialize'] = TRUE;
  $element['#tree'] = TRUE;
  $composite_elements = static::initializeCompositeElements($element);
  static::processWebformCompositeElementsRecursive($element, $composite_elements, $form_state, $complete_form);
  $element += $composite_elements;

  // Add validate callback.
  $element += [
    '#element_validate' => [],
  ];
  array_unshift($element['#element_validate'], [
    get_called_class(),
    'validateWebformComposite',
  ]);
  if (!empty($element['#flexbox'])) {
    $element['#attached']['library'][] = 'webform/webform.element.flexbox';
  }
  return $element;
}