You are here

function webform_update_8100 in Webform 6.x

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

Issue #2888862: Provide a mechanism to lock a webform submission. Update handlers.

File

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

Code

function webform_update_8100() {

  // Add locked to action handler.
  _webform_update_webform_handler_settings();

  // Add locked to remote post handler's excluded data.

  /** @var \Drupal\webform\WebformInterface[] $webforms */
  $webforms = Webform::loadMultiple();
  foreach ($webforms as $webform) {
    $has_handler = FALSE;
    $handlers = $webform
      ->getHandlers();
    foreach ($handlers as $handler) {
      if ($handler instanceof RemotePostWebformHandler) {
        $has_handler = TRUE;
        $settings = $handler
          ->getSettings();
        if ($settings['excluded_data']) {
          $settings['excluded_data']['locked'] = 'locked';
          $handler
            ->setSettings($settings);
        }
      }
    }
    if ($has_handler) {
      $webform
        ->save();
    }
  }
}