/** * @see \Ableron\Lib\Event\EventHandlerInterface::handle() */ public function handle(EventInterface $event) { // only take care of login attempts where both username and password are set /** @var \Ableron\Modules\Core\Events\LoginAttemptFailedEvent $event */ if ($event->getUsername() !== '' && $event->getPassword() !== '') { // log failed login attempt if (($loginAttemptsEntity = BruteForceProtectionService::getLoginAttemptsByUsername($event->getUsername())) !== null) { $loginAttemptsEntity->addFailedAttempt(); } else { Application::getPersistenceManager()->getEntityManager()->persist(new LoginAttemptsEntity($event->getUsername())); } } }