You are here

public function DateRangeFieldItemList::defaultValuesFormSubmit in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/datetime_range/src/Plugin/Field/FieldType/DateRangeFieldItemList.php \Drupal\datetime_range\Plugin\Field\FieldType\DateRangeFieldItemList::defaultValuesFormSubmit()
  2. 10 core/modules/datetime_range/src/Plugin/Field/FieldType/DateRangeFieldItemList.php \Drupal\datetime_range\Plugin\Field\FieldType\DateRangeFieldItemList::defaultValuesFormSubmit()

Processes the submitted default value.

Invoked from \Drupal\field_ui\Form\FieldConfigEditForm to allow administrators to configure instance-level default value.

Parameters

array $element: The default value form element.

array $form: The form where the settings form is being included in.

\Drupal\Core\Form\FormStateInterface $form_state: The form state of the (entire) configuration form.

Return value

array The field default value.

Overrides DateTimeFieldItemList::defaultValuesFormSubmit

File

core/modules/datetime_range/src/Plugin/Field/FieldType/DateRangeFieldItemList.php, line 80

Class

DateRangeFieldItemList
Represents a configurable entity daterange field.

Namespace

Drupal\datetime_range\Plugin\Field\FieldType

Code

public function defaultValuesFormSubmit(array $element, array &$form, FormStateInterface $form_state) {
  if ($form_state
    ->getValue([
    'default_value_input',
    'default_date_type',
  ]) || $form_state
    ->getValue([
    'default_value_input',
    'default_end_date_type',
  ])) {
    if ($form_state
      ->getValue([
      'default_value_input',
      'default_date_type',
    ]) == static::DEFAULT_VALUE_NOW) {
      $form_state
        ->setValueForElement($element['default_date'], static::DEFAULT_VALUE_NOW);
    }
    if ($form_state
      ->getValue([
      'default_value_input',
      'default_end_date_type',
    ]) == static::DEFAULT_VALUE_NOW) {
      $form_state
        ->setValueForElement($element['default_end_date'], static::DEFAULT_VALUE_NOW);
    }
    return [
      $form_state
        ->getValue('default_value_input'),
    ];
  }
  return [];
}