function VocabularyListBuilder::getDefaultOperations

Same name in other branches
  1. 9 core/modules/taxonomy/src/VocabularyListBuilder.php \Drupal\taxonomy\VocabularyListBuilder::getDefaultOperations()
  2. 8.9.x core/modules/taxonomy/src/VocabularyListBuilder.php \Drupal\taxonomy\VocabularyListBuilder::getDefaultOperations()
  3. 10 core/modules/taxonomy/src/VocabularyListBuilder.php \Drupal\taxonomy\VocabularyListBuilder::getDefaultOperations()

Overrides ConfigEntityListBuilder::getDefaultOperations

File

core/modules/taxonomy/src/VocabularyListBuilder.php, line 108

Class

VocabularyListBuilder
Defines a class to build a listing of taxonomy vocabulary entities.

Namespace

Drupal\taxonomy

Code

public function getDefaultOperations(EntityInterface $entity) {
    $operations = parent::getDefaultOperations($entity);
    if (isset($operations['edit'])) {
        $operations['edit']['title'] = $this->t('Edit vocabulary');
    }
    if (isset($operations['delete'])) {
        $operations['delete']['title'] = $this->t('Delete vocabulary');
    }
    if ($entity->access('access taxonomy overview')) {
        $operations['list'] = [
            'title' => $this->t('List terms'),
            'weight' => 0,
            'url' => $entity->toUrl('overview-form'),
        ];
    }
    $taxonomy_term_access_control_handler = $this->entityTypeManager
        ->getAccessControlHandler('taxonomy_term');
    if ($taxonomy_term_access_control_handler->createAccess($entity->id())) {
        $operations['add'] = [
            'title' => $this->t('Add terms'),
            'weight' => 10,
            'url' => Url::fromRoute('entity.taxonomy_term.add_form', [
                'taxonomy_vocabulary' => $entity->id(),
            ]),
        ];
    }
    return $operations;
}

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