You are here

function block_content_permissions_block_content_access in Block Content Permissions 8

Implements hook_ENTITY_TYPE_access().

File

./block_content_permissions.module, line 17
Block content permissions module.

Code

function block_content_permissions_block_content_access(EntityInterface $entity, $operation, AccountInterface $account) {
  switch ($operation) {
    case 'delete':
    case 'update':

      // Get block content type.
      $bundle_type = $entity
        ->bundle();

      // Check operation permission for block content.
      if ($account
        ->hasPermission("{$operation} any {$bundle_type} block content")) {
        return AccessResult::allowed();
      }
      else {

        // Forbid access.
        return AccessResult::forbidden();
      }
  }
  return AccessResult::neutral();
}