class ReviewsAccessCheck in Reviews 1.0.x
Checks access for displaying reviews pages.
Hierarchy
- class \Drupal\reviews\Access\ReviewsAccessCheck implements AccessInterface
Expanded class hierarchy of ReviewsAccessCheck
1 string reference to 'ReviewsAccessCheck'
1 service uses ReviewsAccessCheck
File
- src/
Access/ ReviewsAccessCheck.php, line 13
Namespace
Drupal\reviews\AccessView source
class ReviewsAccessCheck implements AccessInterface {
/**
* Drupal EntityTypeManager.
*
* @var \Drupal\Core\Entity\EntityTypeManager
*/
protected $entityTypeManager;
/**
* ReviewsAccessCheck constructor.
*
* @param \Drupal\Core\Entity\EntityTypeManager
* Entity Type Manager.
*/
public function __construct(EntityTypeManager $entity_type_manager) {
$this->entityTypeManager = $entity_type_manager;
}
/**
* Access check to determine if reviews are enabled and accessible.
*
* @param \Drupal\node\Interface $account
* Run access checks for this node.
*
* @return \Drupal\Core\Access\AccessResultInterface
* The access result.
*/
public function access(NodeInterface $node) {
$config = \Drupal::config('reviews.settings');
$reviews_enabled = $config
->get('reviews.enabled');
$reviewable_types = $config
->get('reviews.review_types');
// Return access alowed only if reviews are enabled and
// the type (bundle) of the node being viewed is included
// in the reviewable node types.
return AccessResult::allowedif($reviews_enabled && $reviewable_types[$node
->bundle()] === $node
->bundle());
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ReviewsAccessCheck:: |
protected | property | Drupal EntityTypeManager. | |
ReviewsAccessCheck:: |
public | function | Access check to determine if reviews are enabled and accessible. | |
ReviewsAccessCheck:: |
public | function | ReviewsAccessCheck constructor. |