class FilterAccessCheck

Checks access for text formats.

Hierarchy

Expanded class hierarchy of FilterAccessCheck

1 string reference to 'FilterAccessCheck'
filter.services.yml in drupal/core/modules/filter/filter.services.yml
drupal/core/modules/filter/filter.services.yml
1 service uses FilterAccessCheck

File

drupal/core/modules/filter/lib/Drupal/filter/Access/FilterAccessCheck.php, line 17
Contains \Drupal\filter\Access\FilterAccessCheck.

Namespace

Drupal\filter\Access
View source
class FilterAccessCheck implements AccessCheckInterface {

  /**
   * {@inheritdoc}
   */
  public function applies(Route $route) {
    return array_key_exists('_filter_access', $route
      ->getRequirements());
  }

  /**
   * {@inheritdoc}
   */
  public function access(Route $route, Request $request) {
    if ($format = $request->attributes
      ->get('filter_format')) {

      // Handle special cases up front. All users have access to the fallback
      // format.
      if ($format->format == filter_fallback_format()) {
        return TRUE;
      }

      // Check the permission if one exists; otherwise, we have a non-existent
      // format so we return FALSE.
      $permission = filter_permission_name($format);
      return !empty($permission) && user_access($permission);
    }
  }

}

Members

Namesort descending Modifiers Type Description Overrides
AccessCheckInterface::ALLOW constant Grant access.
AccessCheckInterface::DENY constant Deny access.
AccessCheckInterface::KILL constant Block access.
FilterAccessCheck::access public function Checks for access to route. Overrides AccessCheckInterface::access
FilterAccessCheck::applies public function Declares whether the access check applies to a specific route or not. Overrides AccessCheckInterface::applies