You are here

public function DisableLoginAccessCheck::access in Disable Login Page 1.0.x

A custom access check.

Parameters

\Drupal\Core\Session\AccountInterface $account: Run access checks for this account.

\Drupal\Core\Routing\RouteMatch $route_match: The route which is attempted to be accessed.

Return value

\Drupal\Core\Access\AccessResultInterface The access result.

File

src/Access/DisableLoginAccessCheck.php, line 81

Class

DisableLoginAccessCheck
Class DisableLoginAccessCheck.

Namespace

Drupal\disable_login\Access

Code

public function access(AccountInterface $account, RouteMatch $route_match) {
  $route_name = $route_match
    ->getRouteName();
  switch ($route_name) {

    // For login pages check for token.
    case 'user.login':
    case 'user.login.http':
      if (!$this
        ->hasValidSecretToken($route_match)) {
        return AccessResult::forbidden();
      }
  }
  return AccessResult::allowed();
}