Analyze.php

Same filename and directory in other branches
  1. 9 core/modules/views_ui/src/Form/Ajax/Analyze.php
  2. 8.9.x core/modules/views_ui/src/Form/Ajax/Analyze.php
  3. 10 core/modules/views_ui/src/Form/Ajax/Analyze.php

Namespace

Drupal\views_ui\Form\Ajax

File

core/modules/views_ui/src/Form/Ajax/Analyze.php

View source
<?php

namespace Drupal\views_ui\Form\Ajax;

use Drupal\Core\Form\FormStateInterface;
use Drupal\views\Views;

/**
 * Displays analysis information for a view.
 *
 * @internal
 */
class Analyze extends ViewsFormBase {
  
  /**
   * {@inheritdoc}
   */
  public function getFormKey() {
    return 'analyze';
  }
  
  /**
   * {@inheritdoc}
   */
  public function getFormId() {
    return 'views_ui_analyze_view_form';
  }
  
  /**
   * {@inheritdoc}
   */
  public function buildForm(array $form, FormStateInterface $form_state) {
    $view = $form_state->get('view');
    $form['#title'] = $this->t('View analysis');
    $form['#section'] = 'analyze';
    $analyzer = Views::analyzer();
    $messages = $analyzer->getMessages($view->getExecutable());
    $form['analysis'] = [
      '#prefix' => '<div class="js-form-item form-item">',
      '#suffix' => '</div>',
      '#markup' => $analyzer->formatMessages($messages),
    ];
    // Inform the standard button function that we want an OK button.
    $form_state->set('ok_button', TRUE);
    $view->getStandardButtons($form, $form_state, 'views_ui_analyze_view_form');
    return $form;
  }
  
  /**
   * {@inheritdoc}
   */
  public function submitForm(array &$form, FormStateInterface $form_state) {
    /** @var \Drupal\views_ui\ViewUI $view */
    $view = $form_state->get('view');
    $form_state->setRedirectUrl($view->toUrl('edit-form'));
  }

}

Classes

Title Deprecated Summary
Analyze Displays analysis information for a view.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.