book_breadcrumb_test.module 756 B

123456789101112131415161718192021222324252627
  1. <?php
  2. /**
  3. * @file
  4. * Test module for testing the book module breadcrumb.
  5. */
  6. use Drupal\Core\Access\AccessResultForbidden;
  7. use Drupal\Core\Access\AccessResultNeutral;
  8. use Drupal\Core\Session\AccountInterface;
  9. use Drupal\node\NodeInterface;
  10. /**
  11. * Implements hook_node_access().
  12. */
  13. function book_breadcrumb_test_node_access(NodeInterface $node, $operation, AccountInterface $account) {
  14. $config = \Drupal::config('book_breadcrumb_test.settings');
  15. if ($config->get('hide') && $node->getTitle() == "you can't see me" && $operation == 'view') {
  16. $access = new AccessResultForbidden();
  17. }
  18. else {
  19. $access = new AccessResultNeutral();
  20. }
  21. $access->addCacheableDependency($config);
  22. $access->addCacheableDependency($node);
  23. return $access;
  24. }