You are here

public function SmartDateFieldItemList::defaultValuesFormSubmit in Smart Date 3.0.x

Same name and namespace in other branches
  1. 8.2 src/Plugin/Field/FieldType/SmartDateFieldItemList.php \Drupal\smart_date\Plugin\Field\FieldType\SmartDateFieldItemList::defaultValuesFormSubmit()
  2. 8 src/Plugin/Field/FieldType/SmartDateFieldItemList.php \Drupal\smart_date\Plugin\Field\FieldType\SmartDateFieldItemList::defaultValuesFormSubmit()
  3. 3.x src/Plugin/Field/FieldType/SmartDateFieldItemList.php \Drupal\smart_date\Plugin\Field\FieldType\SmartDateFieldItemList::defaultValuesFormSubmit()
  4. 3.1.x src/Plugin/Field/FieldType/SmartDateFieldItemList.php \Drupal\smart_date\Plugin\Field\FieldType\SmartDateFieldItemList::defaultValuesFormSubmit()
  5. 3.2.x src/Plugin/Field/FieldType/SmartDateFieldItemList.php \Drupal\smart_date\Plugin\Field\FieldType\SmartDateFieldItemList::defaultValuesFormSubmit()
  6. 3.3.x src/Plugin/Field/FieldType/SmartDateFieldItemList.php \Drupal\smart_date\Plugin\Field\FieldType\SmartDateFieldItemList::defaultValuesFormSubmit()
  7. 3.4.x src/Plugin/Field/FieldType/SmartDateFieldItemList.php \Drupal\smart_date\Plugin\Field\FieldType\SmartDateFieldItemList::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

src/Plugin/Field/FieldType/SmartDateFieldItemList.php, line 110

Class

SmartDateFieldItemList
Represents a configurable entity smartdate field.

Namespace

Drupal\smart_date\Plugin\Field\FieldType

Code

public function defaultValuesFormSubmit(array $element, array &$form, FormStateInterface $form_state) {
  if (strlen((string) $form_state
    ->getValue([
    'default_value_input',
    'default_duration',
  ])) && strlen((string) $form_state
    ->getValue([
    'default_value_input',
    'default_duration_increments',
  ]))) {
    if ($duration = $form_state
      ->getValue([
      'default_value_input',
      'default_duration',
    ])) {
      $form_state
        ->setValueForElement($element['default_duration'], $duration);
    }
    if ($duration_increments = $form_state
      ->getValue([
      'default_value_input',
      'default_duration_increments',
    ])) {
      $form_state
        ->setValueForElement($element['default_duration_increments'], $duration_increments);
    }
    return [
      $form_state
        ->getValue('default_value_input'),
    ];
  }

  // Use the parent class method to store current date configuration.
  DateTimeFieldItemList::defaultValuesFormSubmit($element, $form, $form_state);
  return [];
}