class CategoryAccessController

Defines an access controller for the contact category entity.

Hierarchy

Expanded class hierarchy of CategoryAccessController

See also

\Drupal\contact\Plugin\Core\Entity\Category.

File

drupal/core/modules/contact/lib/Drupal/contact/CategoryAccessController.php, line 18
Contains \Drupal\contact\CategoryAccessController.

Namespace

Drupal\contact
View source
class CategoryAccessController extends EntityAccessController {

  /**
   * {@inheritdoc}
   */
  public function checkAccess(EntityInterface $entity, $operation, $langcode, AccountInterface $account) {
    if ($operation == 'delete' || $operation == 'update') {

      // Do not allow delete 'personal' category used for personal contact form.
      return user_access('administer contact forms', $account) && $entity
        ->id() !== 'personal';
    }
    else {
      return user_access('administer contact forms', $account);
    }
  }

}

Members

Namesort descending Modifiers Type Description Overrides
CategoryAccessController::checkAccess public function Performs access checks. Overrides EntityAccessController::checkAccess
EntityAccessController::$accessCache protected property Stores calculcated access check results.
EntityAccessController::access public function Checks access to an operation on a given entity or entity translation. Overrides EntityAccessControllerInterface::access 1
EntityAccessController::getCache protected function Tries to retrieve a previously cached access value from the static cache.
EntityAccessController::resetCache public function Clears all cached access checks. Overrides EntityAccessControllerInterface::resetCache
EntityAccessController::setCache protected function Statically caches whether the given user has access.