/**
  * 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';
     }
 }
示例#2
0
 /**
  * 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;
 }