Loading src/Plugin/Field/FieldFormatter/DateRangeFormatterRangeFormatter.php +10 −5 Original line number Diff line number Diff line Loading @@ -47,9 +47,13 @@ class DateRangeFormatterRangeFormatter extends DateTimeCustomFormatter { $elements = []; foreach ($items as $delta => $item) { if (!empty($item->start_date) && !empty($item->end_date)) { // To make this module compatible with optional_end_date // Deal with start_date and end date separately. if (!empty($item->start_date)) { /** @var \Drupal\Core\Datetime\DrupalDateTime $start_date */ $start_date = $item->start_date->getTimestamp(); // Process optional end date. if (!empty($item->end_date)) { /** @var \Drupal\Core\Datetime\DrupalDateTime $end_date */ $end_date = $item->end_date->getTimestamp(); if ($start_date !== $end_date) { Loading @@ -63,7 +67,6 @@ class DateRangeFormatterRangeFormatter extends DateTimeCustomFormatter { if (date('d.m.Y', $start_date) === date('d.m.Y', $end_date)) { $format = $this->getSetting('one_day'); } $date_str = \Drupal::service('date.formatter')->format($start_date, 'custom', preg_replace('/\{([a-zA-Z])\}/', '{\\\$1}', t($format))); $matches = array(); if (preg_match_all('/\{([a-zA-Z])\}/', $date_str, $matches)) { Loading @@ -72,10 +75,12 @@ class DateRangeFormatterRangeFormatter extends DateTimeCustomFormatter { } } $elements[$delta] = ['#markup' => '<span class="date-display-range">' . $date_str . '</span>',]; } else { $elements[$delta] = ['#markup' => \Drupal::service('date.formatter')->format($start_date, 'custom', t($this->getSetting('one_day')))]; } if (!array_key_exists($delta, $elements)) { // No end date provided or end date equals start date use single formatting. $single_format = $this->getSetting('single'); $elements[$delta] = ['#markup' => \Drupal::service('date.formatter')->format($start_date, 'custom', t($single_format))]; } } } Loading Loading
src/Plugin/Field/FieldFormatter/DateRangeFormatterRangeFormatter.php +10 −5 Original line number Diff line number Diff line Loading @@ -47,9 +47,13 @@ class DateRangeFormatterRangeFormatter extends DateTimeCustomFormatter { $elements = []; foreach ($items as $delta => $item) { if (!empty($item->start_date) && !empty($item->end_date)) { // To make this module compatible with optional_end_date // Deal with start_date and end date separately. if (!empty($item->start_date)) { /** @var \Drupal\Core\Datetime\DrupalDateTime $start_date */ $start_date = $item->start_date->getTimestamp(); // Process optional end date. if (!empty($item->end_date)) { /** @var \Drupal\Core\Datetime\DrupalDateTime $end_date */ $end_date = $item->end_date->getTimestamp(); if ($start_date !== $end_date) { Loading @@ -63,7 +67,6 @@ class DateRangeFormatterRangeFormatter extends DateTimeCustomFormatter { if (date('d.m.Y', $start_date) === date('d.m.Y', $end_date)) { $format = $this->getSetting('one_day'); } $date_str = \Drupal::service('date.formatter')->format($start_date, 'custom', preg_replace('/\{([a-zA-Z])\}/', '{\\\$1}', t($format))); $matches = array(); if (preg_match_all('/\{([a-zA-Z])\}/', $date_str, $matches)) { Loading @@ -72,10 +75,12 @@ class DateRangeFormatterRangeFormatter extends DateTimeCustomFormatter { } } $elements[$delta] = ['#markup' => '<span class="date-display-range">' . $date_str . '</span>',]; } else { $elements[$delta] = ['#markup' => \Drupal::service('date.formatter')->format($start_date, 'custom', t($this->getSetting('one_day')))]; } if (!array_key_exists($delta, $elements)) { // No end date provided or end date equals start date use single formatting. $single_format = $this->getSetting('single'); $elements[$delta] = ['#markup' => \Drupal::service('date.formatter')->format($start_date, 'custom', t($single_format))]; } } } Loading