function ContactAccessControlHandler::checkAccess
Same name in other branches
- 3.x modules/content_entity_example/src/ContactAccessControlHandler.php \Drupal\content_entity_example\ContactAccessControlHandler::checkAccess()
- 8.x-1.x content_entity_example/src/ContactAccessControlHandler.php \Drupal\content_entity_example\ContactAccessControlHandler::checkAccess()
Link the activities to the permissions. checkAccess() is called with the $operation as defined in the routing.yml file.
Overrides EntityAccessControlHandler::checkAccess
File
-
modules/
content_entity_example/ src/ ContactAccessControlHandler.php, line 21
Class
- ContactAccessControlHandler
- Access controller for the contact entity.
Namespace
Drupal\content_entity_exampleCode
protected function checkAccess(EntityInterface $entity, $operation, AccountInterface $account) {
// Check the admin_permission as defined in your @ContentEntityType
// annotation.
$admin_permission = $this->entityType
->getAdminPermission();
if ($account->hasPermission($admin_permission)) {
return AccessResult::allowed();
}
switch ($operation) {
case 'view':
return AccessResult::allowedIfHasPermission($account, 'view contact entity');
case 'update':
return AccessResult::allowedIfHasPermission($account, 'edit contact entity');
case 'delete':
return AccessResult::allowedIfHasPermission($account, 'delete contact entity');
}
return AccessResult::neutral();
}