annotate core/modules/views/src/Plugin/Derivative/DefaultWizardDeriver.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 129ea1e6d783
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 namespace Drupal\views\Plugin\Derivative;
Chris@0 4
Chris@0 5 use Drupal\Component\Plugin\Derivative\DeriverBase;
Chris@0 6 use Drupal\views\Views;
Chris@0 7
Chris@0 8 /**
Chris@0 9 * A derivative class which provides automatic wizards for all base tables.
Chris@0 10 *
Chris@0 11 * The derivatives store all base table plugin information.
Chris@0 12 */
Chris@0 13 class DefaultWizardDeriver extends DeriverBase {
Chris@17 14
Chris@0 15 /**
Chris@0 16 * {@inheritdoc}
Chris@0 17 */
Chris@0 18 public function getDerivativeDefinitions($base_plugin_definition) {
Chris@0 19 $views_data = Views::viewsData();
Chris@0 20 $base_tables = array_keys($views_data->fetchBaseTables());
Chris@0 21 $this->derivatives = [];
Chris@0 22 foreach ($base_tables as $table) {
Chris@0 23 $views_info = $views_data->get($table);
Chris@0 24 if (empty($views_info['table']['wizard_id'])) {
Chris@0 25 $this->derivatives[$table] = [
Chris@0 26 'id' => 'standard',
Chris@0 27 'base_table' => $table,
Chris@0 28 'title' => $views_info['table']['base']['title'],
Chris@17 29 'class' => 'Drupal\views\Plugin\views\wizard\Standard',
Chris@0 30 ];
Chris@0 31 }
Chris@0 32 }
Chris@0 33 return parent::getDerivativeDefinitions($base_plugin_definition);
Chris@0 34 }
Chris@0 35
Chris@0 36 }