You are here

function _webform_update_8014 in Webform 6.x

Same name and namespace in other branches
  1. 8.5 includes/webform.install.update.inc \_webform_update_8014()

Add 'webform_' prefix to #type.

Parameters

array $element: A form element.

1 call to _webform_update_8014()
webform_update_8014 in includes/webform.install.update.inc
Issue #2848042: Rework #type shorthand prefix handling.

File

includes/webform.install.update.inc, line 325
Archived Webform update hooks.

Code

function _webform_update_8014(array &$element) {

  // Issue #2863986: Allow updating modules with new service dependencies.
  \Drupal::service('kernel')
    ->rebuildContainer();

  /** @var \Drupal\webform\Plugin\WebformElementManagerInterface $element_manager */
  $element_manager = \Drupal::service('plugin.manager.webform.element');

  // Add 'webform_' prefix to #type.
  if (isset($element['#type']) && !$element_manager
    ->hasDefinition($element['#type']) && $element_manager
    ->hasDefinition('webform_' . $element['#type'])) {
    $element['#type'] = 'webform_' . $element['#type'];
  }
  foreach (Element::children($element) as $key) {
    if (is_array($element[$key])) {
      _webform_update_8014($element[$key]);
    }
  }
}