isPublished()) { return AccessResult::allowedIfHasPermission($account, 'view unpublished case entities'); } return AccessResult::allowedIf( $account->hasPermission('view published case entities') || CaseInvolvement::userIsInvolved($account, $entity) ); case 'update': return AccessResult::allowedIf( $account->hasPermission('edit published case entities') || CaseInvolvement::userIsInvolved($account, $entity) ); case 'delete': return AccessResult::allowedIfHasPermission($account, 'delete case entities'); } // Unknown operation, no opinion. return AccessResult::neutral(); } /** * {@inheritdoc} */ protected function checkCreateAccess(AccountInterface $account, array $context, $entity_bundle = NULL) { return AccessResult::allowedIfHasPermission($account, 'add case entities'); } }