livre-1.0.0-beta6/book/tests/modules/book_breadcrumb_test/book_breadcrumb_test.module
book/tests/modules/book_breadcrumb_test/book_breadcrumb_test.module
<?php
/**
* @file
* Test module for testing the book module breadcrumb.
*/
use Drupal\Core\Access\AccessResultForbidden;
use Drupal\Core\Access\AccessResultInterface;
use Drupal\Core\Access\AccessResultNeutral;
use Drupal\Core\Session\AccountInterface;
use Drupal\node\NodeInterface;
/**
* Implements hook_ENTITY_TYPE_access().
*/
function book_breadcrumb_test_node_access(NodeInterface $node, $operation, AccountInterface $account): AccessResultInterface {
$config = \Drupal::config('book_breadcrumb_test.settings');
if ($config->get('hide') && $node->getTitle() == "you can't see me" && $operation == 'view') {
$access = new AccessResultForbidden();
}
else {
$access = new AccessResultNeutral();
}
$access->addCacheableDependency($config);
$access->addCacheableDependency($node);
return $access;
}
