You are here

class Page in Drupal 10

Same name in this branch
  1. 10 core/lib/Drupal/Core/Render/Element/Page.php \Drupal\Core\Render\Element\Page
  2. 10 core/modules/views/src/Plugin/views/display/Page.php \Drupal\views\Plugin\views\display\Page
Same name and namespace in other branches
  1. 8 core/modules/views/src/Plugin/views/display/Page.php \Drupal\views\Plugin\views\display\Page
  2. 9 core/modules/views/src/Plugin/views/display/Page.php \Drupal\views\Plugin\views\display\Page

The plugin that handles a full page.

Plugin annotation


@ViewsDisplay(
  id = "page",
  title = @Translation("Page"),
  help = @Translation("Display the view as a page, with a URL and menu links."),
  uses_menu_links = TRUE,
  uses_route = TRUE,
  contextual_links_locations = {"page"},
  theme = "views_view",
  admin = @Translation("Page")
)

Hierarchy

Expanded class hierarchy of Page

Related topics

4 files declare their use of Page
PageTest.php in core/modules/views/tests/src/Unit/Plugin/display/PageTest.php
ViewExecutableTest.php in core/modules/views/tests/src/Kernel/ViewExecutableTest.php
ViewPageController.php in core/modules/views/src/Routing/ViewPageController.php
ViewStorageTest.php in core/modules/views/tests/src/Kernel/ViewStorageTest.php
164 string references to 'Page'
ArgumentDefaultTest::testArgumentDefaultNode in core/modules/views/tests/src/Functional/Plugin/ArgumentDefaultTest.php
Tests node default argument.
book_views_data in core/modules/book/book.views.inc
Implements hook_views_data().
CommentTypeTest::providerSource in core/modules/comment/tests/src/Kernel/Plugin/migrate/source/CommentTypeTest.php
The data provider.
ConditionFormTest::testConfigForm in core/modules/system/tests/src/Functional/Condition/ConditionFormTest.php
Submit the condition_node_type_test_form to test condition forms.
ConfigurableLanguageManagerTest::setUp in core/modules/language/tests/src/Functional/ConfigurableLanguageManagerTest.php

... See full list

File

core/modules/views/src/Plugin/views/display/Page.php, line 30

Namespace

Drupal\views\Plugin\views\display
View source
class Page extends PathPluginBase {

  /**
   * The current page render array.
   *
   * @var array
   */
  protected static $pageRenderArray;

  /**
   * Whether the display allows attachments.
   *
   * @var bool
   */
  protected $usesAttachments = TRUE;

  /**
   * The menu storage.
   *
   * @var \Drupal\Core\Entity\EntityStorageInterface
   */
  protected $menuStorage;

  /**
   * The parent form selector service.
   *
   * @var \Drupal\Core\Menu\MenuParentFormSelectorInterface
   */
  protected $parentFormSelector;

  /**
   * Constructs a Page object.
   *
   * @param array $configuration
   *   A configuration array containing information about the plugin instance.
   * @param string $plugin_id
   *   The plugin_id for the plugin instance.
   * @param mixed $plugin_definition
   *   The plugin implementation definition.
   * @param \Drupal\Core\Routing\RouteProviderInterface $route_provider
   *   The route provider.
   * @param \Drupal\Core\State\StateInterface $state
   *   The state key value store.
   * @param \Drupal\Core\Entity\EntityStorageInterface $menu_storage
   *   The menu storage.
   * @param \Drupal\Core\Menu\MenuParentFormSelectorInterface $parent_form_selector
   *   The parent form selector service.
   */
  public function __construct(array $configuration, $plugin_id, $plugin_definition, RouteProviderInterface $route_provider, StateInterface $state, EntityStorageInterface $menu_storage, MenuParentFormSelectorInterface $parent_form_selector) {
    parent::__construct($configuration, $plugin_id, $plugin_definition, $route_provider, $state);
    $this->menuStorage = $menu_storage;
    $this->parentFormSelector = $parent_form_selector;
  }

  /**
   * {@inheritdoc}
   */
  public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) {
    return new static($configuration, $plugin_id, $plugin_definition, $container
      ->get('router.route_provider'), $container
      ->get('state'), $container
      ->get('entity_type.manager')
      ->getStorage('menu'), $container
      ->get('menu.parent_form_selector'));
  }

  /**
   * {@inheritdoc}
   */
  protected function getRoute($view_id, $display_id) {
    $route = parent::getRoute($view_id, $display_id);

    // Explicitly set HTML as the format for Page displays.
    $route
      ->setRequirement('_format', 'html');
    return $route;
  }

  /**
   * Sets the current page views render array.
   *
   * @param array $element
   *   (optional) A render array. If not specified the previous element is
   *   returned.
   *
   * @return array
   *   The page render array.
   */
  public static function &setPageRenderArray(array &$element = NULL) {
    if (isset($element)) {
      static::$pageRenderArray =& $element;
    }
    return static::$pageRenderArray;
  }

  /**
   * Gets the current views page render array.
   *
   * @return array
   *   The page render array.
   */
  public static function &getPageRenderArray() {
    return static::$pageRenderArray;
  }

  /**
   * {@inheritdoc}
   */
  protected function defineOptions() {
    $options = parent::defineOptions();
    $options['menu'] = [
      'contains' => [
        'type' => [
          'default' => 'none',
        ],
        'title' => [
          'default' => '',
        ],
        'description' => [
          'default' => '',
        ],
        'weight' => [
          'default' => 0,
        ],
        'enabled' => [
          'default' => TRUE,
        ],
        'menu_name' => [
          'default' => 'main',
        ],
        'parent' => [
          'default' => '',
        ],
        'context' => [
          'default' => '',
        ],
        'expanded' => [
          'default' => FALSE,
        ],
      ],
    ];
    $options['tab_options'] = [
      'contains' => [
        'type' => [
          'default' => 'none',
        ],
        'title' => [
          'default' => '',
        ],
        'description' => [
          'default' => '',
        ],
        'weight' => [
          'default' => 0,
        ],
      ],
    ];
    return $options;
  }

  /**
   * {@inheritdoc}
   */
  public static function buildBasicRenderable($view_id, $display_id, array $args = [], Route $route = NULL) {
    $build = parent::buildBasicRenderable($view_id, $display_id, $args);
    if ($route) {
      $build['#view_id'] = $route
        ->getDefault('view_id');
      $build['#view_display_plugin_id'] = $route
        ->getOption('_view_display_plugin_id');
      $build['#view_display_show_admin_links'] = $route
        ->getOption('_view_display_show_admin_links');
    }
    else {
      throw new \BadFunctionCallException('Missing route parameters.');
    }
    return $build;
  }

  /**
   * {@inheritdoc}
   */
  public function execute() {
    parent::execute();

    // And now render the view.
    $render = $this->view
      ->render();

    // First execute the view so it's possible to get tokens for the title.
    // And the title, which is much easier.
    // @todo Figure out how to support custom response objects. Maybe for pages
    //   it should be dropped.
    if (is_array($render)) {
      $render += [
        '#title' => [
          '#markup' => $this->view
            ->getTitle(),
          '#allowed_tags' => Xss::getHtmlTagList(),
        ],
      ];
    }
    return $render;
  }

  /**
   * {@inheritdoc}
   */
  public function optionsSummary(&$categories, &$options) {
    parent::optionsSummary($categories, $options);
    $menu = $this
      ->getOption('menu');
    if (!is_array($menu)) {
      $menu = [
        'type' => 'none',
      ];
    }
    switch ($menu['type']) {
      case 'none':
      default:
        $menu_str = $this
          ->t('No menu');
        break;
      case 'normal':
        $menu_str = $this
          ->t('Normal: @title', [
          '@title' => $menu['title'],
        ]);
        break;
      case 'tab':
      case 'default tab':
        $menu_str = $this
          ->t('Tab: @title', [
          '@title' => $menu['title'],
        ]);
        break;
    }
    $options['menu'] = [
      'category' => 'page',
      'title' => $this
        ->t('Menu'),
      'value' => views_ui_truncate($menu_str, 24),
    ];

    // This adds a 'Settings' link to the style_options setting if the style
    // has options.
    if ($menu['type'] == 'default tab') {
      $options['menu']['setting'] = $this
        ->t('Parent menu link');
      $options['menu']['links']['tab_options'] = $this
        ->t('Change settings for the parent menu');
    }
  }

  /**
   * {@inheritdoc}
   */
  public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    parent::buildOptionsForm($form, $form_state);
    switch ($form_state
      ->get('section')) {
      case 'menu':
        $form['#title'] .= $this
          ->t('Menu link entry');
        $form['menu'] = [
          '#prefix' => '<div class="clearfix">',
          '#suffix' => '</div>',
          '#tree' => TRUE,
        ];
        $menu = $this
          ->getOption('menu');
        if (empty($menu)) {
          $menu = [
            'type' => 'none',
            'title' => '',
            'weight' => 0,
            'expanded' => FALSE,
          ];
        }
        $form['menu']['type'] = [
          '#prefix' => '<div class="views-left-30">',
          '#suffix' => '</div>',
          '#title' => $this
            ->t('Type'),
          '#type' => 'radios',
          '#options' => [
            'none' => $this
              ->t('No menu entry'),
            'normal' => $this
              ->t('Normal menu entry'),
            'tab' => $this
              ->t('Menu tab'),
            'default tab' => $this
              ->t('Default menu tab'),
          ],
          '#default_value' => $menu['type'],
        ];
        $form['menu']['title'] = [
          '#prefix' => '<div class="views-left-50">',
          '#title' => $this
            ->t('Menu link title'),
          '#type' => 'textfield',
          '#default_value' => $menu['title'],
          '#states' => [
            'visible' => [
              [
                ':input[name="menu[type]"]' => [
                  'value' => 'normal',
                ],
              ],
              [
                ':input[name="menu[type]"]' => [
                  'value' => 'tab',
                ],
              ],
              [
                ':input[name="menu[type]"]' => [
                  'value' => 'default tab',
                ],
              ],
            ],
          ],
        ];
        $form['menu']['description'] = [
          '#title' => $this
            ->t('Description'),
          '#type' => 'textfield',
          '#default_value' => $menu['description'],
          '#description' => $this
            ->t("Shown when hovering over the menu link."),
          '#states' => [
            'visible' => [
              [
                ':input[name="menu[type]"]' => [
                  'value' => 'normal',
                ],
              ],
              [
                ':input[name="menu[type]"]' => [
                  'value' => 'tab',
                ],
              ],
              [
                ':input[name="menu[type]"]' => [
                  'value' => 'default tab',
                ],
              ],
            ],
          ],
        ];
        $form['menu']['expanded'] = [
          '#title' => $this
            ->t('Show as expanded'),
          '#type' => 'checkbox',
          '#default_value' => !empty($menu['expanded']),
          '#description' => $this
            ->t('If selected and this menu link has children, the menu will always appear expanded.'),
        ];
        $menu_parent = $menu['menu_name'] . ':' . $menu['parent'];
        $menu_link = 'views_view:views.' . $form_state
          ->get('view')
          ->id() . '.' . $form_state
          ->get('display_id');
        $form['menu']['parent'] = $this->parentFormSelector
          ->parentSelectElement($menu_parent, $menu_link);
        $form['menu']['parent'] += [
          '#title' => $this
            ->t('Parent'),
          '#description' => $this
            ->t('The maximum depth for a link and all its children is fixed. Some menu links may not be available as parents if selecting them would exceed this limit.'),
          '#attributes' => [
            'class' => [
              'menu-title-select',
            ],
          ],
          '#states' => [
            'visible' => [
              [
                ':input[name="menu[type]"]' => [
                  'value' => 'normal',
                ],
              ],
              [
                ':input[name="menu[type]"]' => [
                  'value' => 'tab',
                ],
              ],
            ],
          ],
        ];
        $form['menu']['weight'] = [
          '#title' => $this
            ->t('Weight'),
          '#type' => 'textfield',
          '#default_value' => $menu['weight'] ?? 0,
          '#description' => $this
            ->t('In the menu, the heavier links will sink and the lighter links will be positioned nearer the top.'),
          '#states' => [
            'visible' => [
              [
                ':input[name="menu[type]"]' => [
                  'value' => 'normal',
                ],
              ],
              [
                ':input[name="menu[type]"]' => [
                  'value' => 'tab',
                ],
              ],
              [
                ':input[name="menu[type]"]' => [
                  'value' => 'default tab',
                ],
              ],
            ],
          ],
        ];
        $form['menu']['context'] = [
          '#title' => $this
            ->t('Context'),
          '#suffix' => '</div>',
          '#type' => 'checkbox',
          '#default_value' => !empty($menu['context']),
          '#description' => $this
            ->t('Displays the link in contextual links'),
          '#states' => [
            'visible' => [
              ':input[name="menu[type]"]' => [
                'value' => 'tab',
              ],
            ],
          ],
        ];
        break;
      case 'tab_options':
        $form['#title'] .= $this
          ->t('Default tab options');
        $tab_options = $this
          ->getOption('tab_options');
        if (empty($tab_options)) {
          $tab_options = [
            'type' => 'none',
            'title' => '',
            'weight' => 0,
          ];
        }
        $form['tab_markup'] = [
          '#markup' => '<div class="js-form-item form-item description">' . $this
            ->t('When providing a menu link as a tab, Drupal needs to know what the parent menu link of that tab will be. Sometimes the parent will already exist, but other times you will need to have one created. The path of a parent link will always be the same path with the last part left off. i.e, if the path to this view is <em>foo/bar/baz</em>, the parent path would be <em>foo/bar</em>.') . '</div>',
        ];
        $form['tab_options'] = [
          '#prefix' => '<div class="clearfix">',
          '#suffix' => '</div>',
          '#tree' => TRUE,
        ];
        $form['tab_options']['type'] = [
          '#prefix' => '<div class="views-left-25">',
          '#suffix' => '</div>',
          '#title' => $this
            ->t('Parent menu link'),
          '#type' => 'radios',
          '#options' => [
            'none' => $this
              ->t('Already exists'),
            'normal' => $this
              ->t('Normal menu link'),
            'tab' => $this
              ->t('Menu tab'),
          ],
          '#default_value' => $tab_options['type'],
        ];
        $form['tab_options']['title'] = [
          '#prefix' => '<div class="views-left-75">',
          '#title' => $this
            ->t('Title'),
          '#type' => 'textfield',
          '#default_value' => $tab_options['title'],
          '#description' => $this
            ->t('If creating a parent menu link, enter the title of the link.'),
          '#states' => [
            'visible' => [
              [
                ':input[name="tab_options[type]"]' => [
                  'value' => 'normal',
                ],
              ],
              [
                ':input[name="tab_options[type]"]' => [
                  'value' => 'tab',
                ],
              ],
            ],
          ],
        ];
        $form['tab_options']['description'] = [
          '#title' => $this
            ->t('Description'),
          '#type' => 'textfield',
          '#default_value' => $tab_options['description'],
          '#description' => $this
            ->t('If creating a parent menu link, enter the description of the link.'),
          '#states' => [
            'visible' => [
              [
                ':input[name="tab_options[type]"]' => [
                  'value' => 'normal',
                ],
              ],
              [
                ':input[name="tab_options[type]"]' => [
                  'value' => 'tab',
                ],
              ],
            ],
          ],
        ];
        $form['tab_options']['weight'] = [
          '#suffix' => '</div>',
          '#title' => $this
            ->t('Tab weight'),
          '#type' => 'textfield',
          '#default_value' => $tab_options['weight'],
          '#size' => 5,
          '#description' => $this
            ->t('If the parent menu link is a tab, enter the weight of the tab. Heavier tabs will sink and the lighter tabs will be positioned nearer to the first menu link.'),
          '#states' => [
            'visible' => [
              ':input[name="tab_options[type]"]' => [
                'value' => 'tab',
              ],
            ],
          ],
        ];
        break;
    }
  }

  /**
   * {@inheritdoc}
   */
  public function validateOptionsForm(&$form, FormStateInterface $form_state) {
    parent::validateOptionsForm($form, $form_state);
    if ($form_state
      ->get('section') == 'menu') {
      $path = $this
        ->getOption('path');
      $menu_type = $form_state
        ->getValue([
        'menu',
        'type',
      ]);
      if ($menu_type == 'normal' && strpos($path, '%') !== FALSE) {
        $form_state
          ->setError($form['menu']['type'], $this
          ->t('Views cannot create normal menu links for paths with a % in them.'));
      }
      if ($menu_type == 'default tab' || $menu_type == 'tab') {
        $bits = explode('/', $path);
        $last = array_pop($bits);
        if ($last == '%') {
          $form_state
            ->setError($form['menu']['type'], $this
            ->t('A display whose path ends with a % cannot be a tab.'));
        }
      }
      if ($menu_type != 'none' && $form_state
        ->isValueEmpty([
        'menu',
        'title',
      ])) {
        $form_state
          ->setError($form['menu']['title'], $this
          ->t('Title is required for this menu type.'));
      }
    }
  }

  /**
   * {@inheritdoc}
   */
  public function submitOptionsForm(&$form, FormStateInterface $form_state) {
    parent::submitOptionsForm($form, $form_state);
    switch ($form_state
      ->get('section')) {
      case 'menu':
        $menu = $form_state
          ->getValue('menu');
        [
          $menu['menu_name'],
          $menu['parent'],
        ] = explode(':', $menu['parent'], 2);
        $this
          ->setOption('menu', $menu);

        // send ajax form to options page if we use it.
        if ($form_state
          ->getValue([
          'menu',
          'type',
        ]) == 'default tab') {
          $form_state
            ->get('view')
            ->addFormToStack('display', $this->display['id'], 'tab_options');
        }
        break;
      case 'tab_options':
        $this
          ->setOption('tab_options', $form_state
          ->getValue('tab_options'));
        break;
    }
  }

  /**
   * {@inheritdoc}
   */
  public function validate() {
    $errors = parent::validate();
    $menu = $this
      ->getOption('menu');
    if (!empty($menu['type']) && $menu['type'] != 'none' && empty($menu['title'])) {
      $errors[] = $this
        ->t('Display @display is set to use a menu but the menu link text is not set.', [
        '@display' => $this->display['display_title'],
      ]);
    }
    if ($menu['type'] == 'default tab') {
      $tab_options = $this
        ->getOption('tab_options');
      if (!empty($tab_options['type']) && $tab_options['type'] != 'none' && empty($tab_options['title'])) {
        $errors[] = $this
          ->t('Display @display is set to use a parent menu but the parent menu link text is not set.', [
          '@display' => $this->display['display_title'],
        ]);
      }
    }
    return $errors;
  }

  /**
   * {@inheritdoc}
   */
  public function getArgumentText() {
    return [
      'filter value not present' => $this
        ->t('When the filter value is <em>NOT</em> in the URL'),
      'filter value present' => $this
        ->t('When the filter value <em>IS</em> in the URL or a default is provided'),
      'description' => $this
        ->t('The contextual filter values are provided by the URL.'),
    ];
  }

  /**
   * {@inheritdoc}
   */
  public function getPagerText() {
    return [
      'items per page title' => $this
        ->t('Items per page'),
      'items per page description' => $this
        ->t('Enter 0 for no limit.'),
    ];
  }

  /**
   * {@inheritdoc}
   */
  public function calculateDependencies() {
    $dependencies = parent::calculateDependencies();
    $menu = $this
      ->getOption('menu');
    if ($menu['type'] === 'normal' && ($menu_entity = $this->menuStorage
      ->load($menu['menu_name']))) {
      $dependencies[$menu_entity
        ->getConfigDependencyKey()][] = $menu_entity
        ->getConfigDependencyName();
    }
    return $dependencies;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
DisplayPluginInterface::acceptAttachments public function Determines whether this display can use attachments.
DisplayPluginInterface::access public function Determines if the user has access to this display of the view.
DisplayPluginInterface::ajaxEnabled public function Whether the display is actually using AJAX or not.
DisplayPluginInterface::attachTo public function Allows displays to attach to other views. 1
DisplayPluginInterface::buildRenderable public function Builds a renderable array of the view.
DisplayPluginInterface::calculateCacheMetadata public function Calculates the display's cache metadata by inspecting each handler/plugin.
DisplayPluginInterface::defaultableSections public function Lists the 'defaultable' sections and what items each section contains. 1
DisplayPluginInterface::destroy public function Destroys the display's components and the display itself.
DisplayPluginInterface::displaysExposed public function Determines if this display should display the exposed filters widgets. 1
DisplayPluginInterface::elementPreRender public function #pre_render callback for view display rendering.
DisplayPluginInterface::getArgumentsTokens public function Returns to tokens for arguments.
DisplayPluginInterface::getAttachedDisplays public function Find out all displays which are attached to this display.
DisplayPluginInterface::getCacheMetadata public function Gets the cache metadata.
DisplayPluginInterface::getExtenders public function Gets the display extenders.
DisplayPluginInterface::getFieldLabels public function Retrieves a list of fields for the current display.
DisplayPluginInterface::getHandler public function Get the handler object for a single handler.
DisplayPluginInterface::getHandlers public function Get a full array of handlers for $type. This caches them.
DisplayPluginInterface::getLinkDisplay public function Returns the ID of the display to use when making links.
DisplayPluginInterface::getOption public function Gets an option, from this display or the default display.
DisplayPluginInterface::getPlugin public function Get the instance of a plugin, for example style or row.
DisplayPluginInterface::getRoutedDisplay public function Points to the display which can be linked by this display.
DisplayPluginInterface::getSpecialBlocks public function Provides the block system with any exposed widget blocks for this display.
DisplayPluginInterface::getType public function Returns the display type that this display requires. 2
DisplayPluginInterface::getUrl public function Returns a URL to $this display or its configured linked display.
DisplayPluginInterface::initDisplay public function Initializes the display plugin. 1
DisplayPluginInterface::isDefaultDisplay public function Determines if this display is the 'default' display.
DisplayPluginInterface::isDefaulted public function Determines if an option is set to use the default or current display.
DisplayPluginInterface::isEnabled public function Whether the display is enabled.
DisplayPluginInterface::isIdentifierUnique public function Checks if the provided identifier is unique.
DisplayPluginInterface::isMoreEnabled public function Whether the display is using the 'more' link or not.
DisplayPluginInterface::isPagerEnabled public function Whether the display is using a pager or not.
DisplayPluginInterface::mergeDefaults public function Merges default values for all plugin types.
DisplayPluginInterface::newDisplay public function Reacts on adding a display. 1
DisplayPluginInterface::optionLink public function Returns a link to a section of a form.
DisplayPluginInterface::optionsOverride public function If override/revert was clicked, perform the proper toggle.
DisplayPluginInterface::outputIsEmpty public function Is the output of the view empty.
DisplayPluginInterface::overrideOption public function Set an option and force it to be an override.
DisplayPluginInterface::preExecute public function Sets up any variables on the view prior to execution.
DisplayPluginInterface::preview public function Renders the display for the purposes of a live preview. 2
DisplayPluginInterface::query public function Injects anything into the query that the display handler needs.
DisplayPluginInterface::render public function Renders this display. 2
DisplayPluginInterface::renderArea public function Renders one of the available areas.
DisplayPluginInterface::renderFilters public function Does nothing (obsolete function).
DisplayPluginInterface::renderMoreLink public function Renders the 'more' link.
DisplayPluginInterface::renderPager public function Checks to see if the display plugins support pager rendering.
DisplayPluginInterface::setOption public function Sets an option, on this display or the default display.
DisplayPluginInterface::setOverride public function Flip the override setting for the given section.
DisplayPluginInterface::useGroupBy public function Does the display have groupby enabled?
DisplayPluginInterface::useMoreAlways public function Should the enabled display more link be shown when no more items?
DisplayPluginInterface::useMoreText public function Does the display have custom link text?
DisplayPluginInterface::usesAJAX public function Whether the display allows the use of AJAX or not.
DisplayPluginInterface::usesAreas public function Returns whether the display can use areas.
DisplayPluginInterface::usesAttachments public function Returns whether the display can use attachments.
DisplayPluginInterface::usesExposed public function Determines if this display uses exposed filters. 1
DisplayPluginInterface::usesExposedFormInBlock public function Checks to see if the display can put the exposed form in a block.
DisplayPluginInterface::usesFields public function Determines if the display's style uses fields.
DisplayPluginInterface::usesLinkDisplay public function Checks to see if the display has some need to link to another display. 1
DisplayPluginInterface::usesMore public function Whether the display allows the use of a 'more' link or not.
DisplayPluginInterface::usesPager public function Whether the display allows the use of a pager or not.
DisplayPluginInterface::viewExposedFormBlocks public function Renders the exposed form as block.
Page::$menuStorage protected property The menu storage.
Page::$pageRenderArray protected static property The current page render array.
Page::$parentFormSelector protected property The parent form selector service.
Page::$usesAttachments protected property Whether the display allows attachments.
Page::buildBasicRenderable public static function Builds a basic render array which can be properly render cached. Overrides DisplayPluginInterface::buildBasicRenderable
Page::buildOptionsForm public function Provides the default form for setting options. Overrides PathPluginBase::buildOptionsForm
Page::calculateDependencies public function
Page::create public static function Overrides PathPluginBase::create
Page::defineOptions protected function Overrides \Drupal\views\Plugin\views\display\DisplayPluginBase:defineOptions(). Overrides PathPluginBase::defineOptions
Page::execute public function Executes the view and returns data in the format required. Overrides PathPluginBase::execute
Page::getArgumentText public function Provides help text for the arguments. Overrides DisplayPluginInterface::getArgumentText
Page::getPageRenderArray public static function Gets the current views page render array.
Page::getPagerText public function Provides help text for pagers. Overrides DisplayPluginInterface::getPagerText
Page::getRoute protected function Generates a route entry for a given view and display. Overrides PathPluginBase::getRoute
Page::optionsSummary public function Provides the default summary for options in the views UI. Overrides PathPluginBase::optionsSummary
Page::setPageRenderArray public static function Sets the current page views render array.
Page::submitOptionsForm public function Performs any necessary changes to the form values prior to storage. Overrides PathPluginBase::submitOptionsForm
Page::validate public function Make sure the display and all associated handlers are valid. Overrides PathPluginBase::validate
Page::validateOptionsForm public function Validates the options form. Overrides PathPluginBase::validateOptionsForm
Page::__construct public function Constructs a Page object. Overrides PathPluginBase::__construct
PathPluginBase::$routeProvider protected property The route provider.
PathPluginBase::$state protected property The state key value store.
PathPluginBase::alterRoutes public function Alters a collection of routes and replaces definitions to the view. Overrides DisplayRouterInterface::alterRoutes
PathPluginBase::collectRoutes public function Adds the route entry of a view to the collection. Overrides DisplayRouterInterface::collectRoutes 1
PathPluginBase::getAlteredRouteNames public function Returns the list of routes overridden by Views. Overrides DisplayRouterInterface::getAlteredRouteNames
PathPluginBase::getMenuLinks public function Gets menu links, if this display provides some. Overrides DisplayMenuInterface::getMenuLinks
PathPluginBase::getPath public function Returns the base path to use for this display. Overrides DisplayPluginInterface::getPath
PathPluginBase::getRouteName public function Returns the route name for the display. Overrides DisplayRouterInterface::getRouteName
PathPluginBase::getUrlInfo public function Generates a URL to this display. Overrides DisplayRouterInterface::getUrlInfo
PathPluginBase::hasPath public function Checks to see if the display has a 'path' field. Overrides DisplayPluginInterface::hasPath
PathPluginBase::isDefaultTabPath protected function Determines if this display's path is a default tab.
PathPluginBase::overrideApplies protected function Determines whether the view overrides the given route. 1
PathPluginBase::overrideAppliesPathAndMethod protected function Determines whether an override for the path and method should happen.
PathPluginBase::remove public function Reacts on deleting a display. Overrides DisplayPluginInterface::remove
PathPluginBase::validatePath protected function Validates the path of the display.