TourAccessControlHandler.php 737 B

12345678910111213141516171819202122232425262728
  1. <?php
  2. namespace Drupal\tour;
  3. use Drupal\Core\Access\AccessResult;
  4. use Drupal\Core\Entity\EntityAccessControlHandler;
  5. use Drupal\Core\Entity\EntityInterface;
  6. use Drupal\Core\Session\AccountInterface;
  7. /**
  8. * Defines the access control handler for the tour entity type.
  9. *
  10. * @see \Drupal\tour\Entity\Tour
  11. */
  12. class TourAccessControlHandler extends EntityAccessControlHandler {
  13. /**
  14. * {@inheritdoc}
  15. */
  16. protected function checkAccess(EntityInterface $entity, $operation, AccountInterface $account) {
  17. if ($operation === 'view') {
  18. return AccessResult::allowedIfHasPermissions($account, ['access tour', 'administer site configuration'], 'OR');
  19. }
  20. return parent::checkAccess($entity, $operation, $account);
  21. }
  22. }