You are here

function yamlform_update_8018 in YAML Form 8

Issue #2752817: Create creditcard composite element.

File

includes/yamlform.update.inc, line 510
YAML Form module update hooks.

Code

function yamlform_update_8018() {
  $config_factory = \Drupal::configFactory();

  // Update 'yamlform.settings' configuration.
  $settings_config = \Drupal::configFactory()
    ->getEditable('yamlform.settings');
  $yaml = Yaml::encode($settings_config
    ->getRawData());
  $yaml = str_replace('creditcard', 'creditcard_number', $yaml);
  $settings_config
    ->setData(Yaml::decode($yaml));
  $settings_config
    ->save();

  // Update 'yamlform.yamlform.*' configuration.
  foreach ($config_factory
    ->listAll('yamlform.yamlform.') as $yamlform_config_name) {
    $yamlform_config = $config_factory
      ->getEditable($yamlform_config_name);
    $yaml = Yaml::encode($yamlform_config
      ->getRawData());
    $yaml = str_replace('creditcard', 'creditcard_number', $yaml);
    $data = Yaml::decode($yaml);
    \Drupal::configFactory()
      ->getEditable($yamlform_config_name)
      ->setData($data)
      ->save();
  }
}