You are here

class ReviewsAccessCheck in Reviews 1.0.x

Checks access for displaying reviews pages.

Hierarchy

Expanded class hierarchy of ReviewsAccessCheck

1 string reference to 'ReviewsAccessCheck'
reviews.services.yml in ./reviews.services.yml
reviews.services.yml
1 service uses ReviewsAccessCheck
reviews.access_checker in ./reviews.services.yml
Drupal\reviews\Access\ReviewsAccessCheck

File

src/Access/ReviewsAccessCheck.php, line 13

Namespace

Drupal\reviews\Access
View 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

Namesort descending Modifiers Type Description Overrides
ReviewsAccessCheck::$entityTypeManager protected property Drupal EntityTypeManager.
ReviewsAccessCheck::access public function Access check to determine if reviews are enabled and accessible.
ReviewsAccessCheck::__construct public function ReviewsAccessCheck constructor.