You are here

public function DateRecurFilter::submitOptionsForm in Recurring Dates Field 8.2

Same name and namespace in other branches
  1. 3.x src/Plugin/views/filter/DateRecurFilter.php \Drupal\date_recur\Plugin\views\filter\DateRecurFilter::submitOptionsForm()
  2. 3.0.x src/Plugin/views/filter/DateRecurFilter.php \Drupal\date_recur\Plugin\views\filter\DateRecurFilter::submitOptionsForm()
  3. 3.1.x src/Plugin/views/filter/DateRecurFilter.php \Drupal\date_recur\Plugin\views\filter\DateRecurFilter::submitOptionsForm()

Simple submit handler

Overrides FilterPluginBase::submitOptionsForm

File

src/Plugin/views/filter/DateRecurFilter.php, line 219

Class

DateRecurFilter
Date range/occurrence filter.

Namespace

Drupal\date_recur\Plugin\views\filter

Code

public function submitOptionsForm(&$form, FormStateInterface $form_state) : void {
  parent::submitOptionsForm($form, $form_state);
  $this->options['value_granularity'] = $form_state
    ->getValue([
    'options',
    'value_granularity',
  ]);
  $utc = new \DateTimeZone('UTC');

  /* @var \Drupal\Core\Datetime\DrupalDateTime $min|null */
  $min = $form_state
    ->getValue([
    'options',
    'value_minimum',
  ]);
  if ($min) {
    $min
      ->setTimezone($utc);
  }
  $this->options['value_min'] = $min ? $min
    ->format(\DATE_ISO8601) : NULL;

  /* @var \Drupal\Core\Datetime\DrupalDateTime $max|null */
  $max = $form_state
    ->getValue([
    'options',
    'value_maximum',
  ]);
  if ($max) {
    $max
      ->setTimezone($utc);
  }
  $this->options['value_max'] = $max ? $max
    ->format(\DATE_ISO8601) : NULL;
}