You are here

public function Page::validate in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/views/src/Plugin/views/display/Page.php \Drupal\views\Plugin\views\display\Page::validate()

Validate that the plugin is correct and can be saved.

Return value

An array of error strings to tell the user what is wrong with this plugin.

Overrides PathPluginBase::validate

File

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

Class

Page
The plugin that handles a full page.

Namespace

Drupal\views\Plugin\views\display

Code

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;
}