class BetterLoginSubscriber in Better Login 8
Better Login Subscriber class.
Hierarchy
- class \Drupal\betterlogin\EventSubscriber\BetterLoginSubscriber implements \Symfony\Component\EventDispatcher\EventSubscriberInterface
Expanded class hierarchy of BetterLoginSubscriber
1 string reference to 'BetterLoginSubscriber'
1 service uses BetterLoginSubscriber
File
- src/
EventSubscriber/ BetterLoginSubscriber.php, line 15
Namespace
Drupal\betterlogin\EventSubscriberView source
class BetterLoginSubscriber implements EventSubscriberInterface {
/**
* The current user.
*
* @var \Drupal\Core\Session\AccountInterface
*/
protected $currentUser;
/**
* Constructs the BetterLoginSubscriber object.
*
* @param \Drupal\Core\Session\AccountInterface $current_user
* The current user.
*/
public function __construct(AccountInterface $current_user) {
$this->currentUser = $current_user;
}
/**
* Function checkForRedirection.
*
* Redirection for anonymous users.
*
* @param \Symfony\Component\HttpKernel\Event\GetResponseEvent $event
* GetResponseEvent event.
*/
public function checkForRedirection(GetResponseEvent $event) {
if ($this->currentUser
->isAnonymous()) {
// Anonymous user.
if ($event
->getRequest()->query
->get('user')) {
$loginUrl = Url::fromRoute('user.login', [
'destination' => 'user',
])
->toString();
$event
->setResponse(new RedirectResponse($loginUrl));
}
}
}
/**
* {@inheritdoc}
*/
public static function getSubscribedEvents() {
$events[KernelEvents::REQUEST][] = [
'checkForRedirection',
];
return $events;
}
}
Members
Name![]() |
Modifiers | Type | Description | Overrides |
---|---|---|---|---|
BetterLoginSubscriber:: |
protected | property | The current user. | |
BetterLoginSubscriber:: |
public | function | Function checkForRedirection. | |
BetterLoginSubscriber:: |
public static | function | Returns an array of event names this subscriber wants to listen to. | |
BetterLoginSubscriber:: |
public | function | Constructs the BetterLoginSubscriber object. |