/** * Get default format value for the options form. * * @return string */ protected function getDefaultReplacementFormat() { switch ($this->argument_wrapper->getGranularity()) { case 'month': return 'F Y'; case 'year': return 'Y'; case 'week': return 'F j, Y'; case 'day': return 'l, F j, Y'; default: // @todo Load format used for medium here return 'F j, Y'; } }
/** * Helper function to find the first date argument handler for this view. * * @param \Drupal\views\ViewExecutable $view * @param null $display_id * * @return \Drupal\calendar\DateArgumentWrapper|FALSE Returns the Date handler if one is found, or FALSE otherwise. * Returns the Date handler if one is found, or FALSE otherwise. */ public static function getDateArgumentHandler(ViewExecutable $view, $display_id = NULL) { $all_arguments = []; if ($display_id) { // If we aren't dealing with current display we have to load the argument handlers. /** @var \Drupal\views\Plugin\ViewsHandlerManager $argument_manager */ $argument_manager = \Drupal::getContainer()->get('plugin.manager.views.argument'); $argument_configs = $view->getHandlers('argument', $display_id); foreach ($argument_configs as $argument_config) { $all_arguments[] = $argument_manager->createInstance($argument_config['plugin_id'], $argument_config); } } else { // $view->argument actually contains an array of current arguments. $all_arguments = $view->argument; } if ($all_arguments) { $current_position = 0; /** * @var $name * @var \Drupal\views\Plugin\views\argument\ArgumentPluginBase $handler */ foreach ($all_arguments as $name => $handler) { if (static::isCalendarArgument($handler)) { $wrapper = new DateArgumentWrapper($handler); $wrapper->setPosition($current_position); return $wrapper; } $current_position++; } } return FALSE; }