ViewsBuilderBase.php in Views Templates 8
File
src/Plugin/ViewsBuilderBase.php
View source
<?php
namespace Drupal\views_templates\Plugin;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Plugin\PluginBase;
use Drupal\views\Entity\View;
abstract class ViewsBuilderBase extends PluginBase implements ViewsBuilderPluginInterface {
public function getBaseTable() {
return $this
->getDefinitionValue('base_table');
}
public function getAdminLabel() {
return $this
->getDefinitionValue('admin_label');
}
public function getDescription() {
return $this
->getDefinitionValue('description');
}
public function getDefinitionValue($key) {
$def = $this
->getPluginDefinition();
if (isset($def[$key])) {
return $def[$key];
}
return NULL;
}
public function createView($options = NULL) {
$view_values = [
'id' => $options['id'],
'label' => $options['label'],
'description' => $options['description'],
'base_table' => $this
->getBaseTable(),
];
return View::create($view_values);
}
public function buildConfigurationForm(array $form, FormStateInterface $form_state) {
return [];
}
public function templateExists() {
return TRUE;
}
}