You are here

function office_hours_post_update_implement_office_hours_default_value_config_schema in Office Hours 8

Adds Office Hours 'default value' schema changes in field config in 8.x-1.3.

File

./office_hours.post_update.php, line 15
Post update functions for Office Hours.

Code

function office_hours_post_update_implement_office_hours_default_value_config_schema(&$sandbox = NULL) {
  \Drupal::classResolver(ConfigEntityUpdater::class)
    ->update($sandbox, 'field_config', function (FieldConfigInterface $fieldConfig) {
    if ($fieldConfig
      ->getFieldStorageDefinition()
      ->getType() !== 'office_hours') {
      return FALSE;
    }
    $default_values = $fieldConfig
      ->getDefaultValueLiteral();
    foreach ($default_values as $key => $default_value_row) {
      $default_values[$key]['starthours'] = (int) $default_value_row['starthours'];
      $default_values[$key]['endhours'] = (int) $default_value_row['endhours'];
      $default_values[$key]['day'] = (int) $default_value_row['day'];
      $default_values[$key]['comment'] = (string) $default_value_row['comment'];
    }
    $fieldConfig
      ->setDefaultValue($default_values);
    return TRUE;
  });
}