Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
8 / 8
100.00% covered (success)
100.00%
1 / 1
CRAP
100.00% covered (success)
100.00%
1 / 1
NameFormatAccessHandler
100.00% covered (success)
100.00%
8 / 8
100.00% covered (success)
100.00%
1 / 1
5
100.00% covered (success)
100.00%
1 / 1
 checkAccess
100.00% covered (success)
100.00%
8 / 8
100.00% covered (success)
100.00%
1 / 1
5
1<?php
2
3declare(strict_types=1);
4
5namespace Drupal\name\Access;
6
7use Drupal\Core\Access\AccessResult;
8use Drupal\Core\Entity\EntityAccessControlHandler;
9use Drupal\Core\Entity\EntityInterface;
10use Drupal\Core\Session\AccountInterface;
11
12/**
13 * The entity access handler for name and list formats.
14 */
15class NameFormatAccessHandler extends EntityAccessControlHandler {
16
17  /**
18   * {@inheritdoc}
19   */
20  protected function checkAccess(EntityInterface $entity, $operation, AccountInterface $account) {
21    switch ($operation) {
22      case 'create':
23      case 'update':
24        return AccessResult::allowedIfHasPermission($account, 'administer site configuration');
25
26      case 'delete':
27        if ($entity->isLocked()) {
28          return AccessResult::forbidden();
29        }
30        return AccessResult::allowedIfHasPermission($account, 'administer site configuration');
31
32    }
33    return parent::checkAccess($entity, $operation, $account);
34  }
35
36}