You are here

public function DateRecurFieldItemList::defaultValuesFormSubmit in Recurring Dates Field 3.1.x

Same name and namespace in other branches
  1. 8.2 src/Plugin/Field/FieldType/DateRecurFieldItemList.php \Drupal\date_recur\Plugin\Field\FieldType\DateRecurFieldItemList::defaultValuesFormSubmit()
  2. 3.x src/Plugin/Field/FieldType/DateRecurFieldItemList.php \Drupal\date_recur\Plugin\Field\FieldType\DateRecurFieldItemList::defaultValuesFormSubmit()
  3. 3.0.x src/Plugin/Field/FieldType/DateRecurFieldItemList.php \Drupal\date_recur\Plugin\Field\FieldType\DateRecurFieldItemList::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 DateRangeFieldItemList::defaultValuesFormSubmit

File

src/Plugin/Field/FieldType/DateRecurFieldItemList.php, line 138

Class

DateRecurFieldItemList
Recurring date field item list.

Namespace

Drupal\date_recur\Plugin\Field\FieldType

Code

public function defaultValuesFormSubmit(array $element, array &$form, FormStateInterface $form_state) : array {
  $values = parent::defaultValuesFormSubmit($element, $form, $form_state);
  $rrule = $form_state
    ->getValue([
    'default_value_input',
    'default_rrule',
  ]);
  if ($rrule) {
    $values[0]['default_rrule'] = $rrule;
  }
  $defaultDateTimeZone = $form_state
    ->getValue([
    'default_value_input',
    'default_date_time_zone',
  ]);
  if ($defaultDateTimeZone) {
    $values[0]['default_date_time_zone'] = $defaultDateTimeZone;
  }
  $defaultTimeZone = $form_state
    ->getValue([
    'default_value_input',
    'default_time_zone',
  ]);
  if ($defaultTimeZone) {
    $values[0]['default_time_zone'] = $defaultTimeZone;
  }
  return $values;
}