taxonomy_overview-1.0.1/src/VocabularyListBuilder.php

src/VocabularyListBuilder.php
<?php

namespace Drupal\taxonomy_overview;

use Drupal\taxonomy\VocabularyListBuilder as CoreVocabularyListBuilder;

/**
 * Provides a list controller for taxonomy vocabularies with filtering.
 */
class VocabularyListBuilder extends CoreVocabularyListBuilder {

  /**
   * {@inheritdoc}
   */
  public function render() {
    // Add our filter form on top of the default table.
    $build['filter_form'] = \Drupal::formBuilder()->getForm('\Drupal\taxonomy_overview\Form\VocabularyFilterForm');
    $build += parent::render();
    return $build;
  }

  /**
   * {@inheritdoc}
   */
  protected function getEntityIds() {
    $query = $this->getStorage()->getQuery()->sort($this->entityType->getKey('id'));

    // Add filter from tempstore.
    $tempstore = \Drupal::service('tempstore.private')->get('taxonomy_overview');
    $filter = $tempstore->get('filter_name');

    if (!empty($filter)) {
      $filter = trim($filter);
      // Use a supported operator for config/entity queries.
      $query->condition('name', $filter, 'CONTAINS');
    }

    return $query->execute();
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc