public function onRegistrationCompleted(FilterUserResponseEvent $event) { $user = $event->getUser(); $user->addRole("ROLE_USER"); $request = $event->getRequest(); $this->em->persist($user); $this->em->flush(); return $event; }
public function onUserAccountDisabled(FilterUserResponseEvent $event) { $user = $event->getUser(); if ($user instanceof User) { $audit = AuditLog::make($user, 'account-deleted', $event->getRequest()->getClientIp()); $this->em->persist($audit); $this->em->flush(); } }
public function addSuccessFlash(FilterUserResponseEvent $event) { if ($event->getRequest()->isXmlHttpRequest()) { return; } if (!isset(self::$successMessages[$event->getName()])) { throw new \InvalidArgumentException('This event does not correspond to a known flash message'); } $this->session->getFlashBag()->add('success', $this->trans(self::$successMessages[$event->getName()])); }
public function finishRegistration(FilterUserResponseEvent $event) { $token = $this->getToken($event->getRequest()); $invitation = $this->getInvitation($token); $player = $invitation->getPlayer(); /** @var User $user */ $user = $event->getUser(); $user->setPlayer($player); $player->setName($user->getUsername()); $this->entityManager->persist($user); $this->entityManager->flush(); // TODO delete invitation? keep it? }
public function authenticate(FilterUserResponseEvent $event) { if (!$event->getUser()->isEnabled()) { return; } try { $this->loginManager->loginUser($this->firewallName, $event->getUser(), $event->getResponse()); $event->getDispatcher()->dispatch(FOSUserEvents::SECURITY_IMPLICIT_LOGIN, new UserEvent($event->getUser(), $event->getRequest())); } catch (AccountStatusException $ex) { // We simply do not authenticate users which do not pass the user // checker (not enabled, expired, etc.). } }
/** * @DI\Observe("fos_user.registration.completed") */ public function addReferrerToUser(FilterUserResponseEvent $event) { $request = $event->getRequest(); // No cookie, no nookie if (!($referralId = $request->cookies->get(self::REFERRAL_COOKIE))) { return; } // Find the referrer $referrer = $this->em->getRepository('ForexCoreBundle:User')->findOneById($referralId); if (!$referrer) { return; } $user = $event->getUser(); $this->referralManager->addReferrerToUser($user, $referrer); $this->em->flush(); }
public function onRegistrationCompleted(FilterUserResponseEvent $event) { $user = $event->getUser(); $auth = new Authorization(); $auth->setPerson($user); $auth->setClient($this->clientRepository->findOneBy(['uid' => $this->defaultClientUid])); $auth->setScope(explode(' ', $this->lcSupportedScopes)); $this->em->persist($auth); $this->em->flush(); $this->mailer->sendConfirmationEmailMessage($user); if (strlen($user->getPassword()) == 0) { // TODO: DEPRECATE NOTIFICATIONS // TODO: create an optional task offering users to set a password //$this->notificationsHelper->enforceEmptyPasswordNotification($user); } $this->registerRequestedScope->clearRequestedScope($event->getRequest()); }
/** * Change locale * @param FilterUserResponseEvent $event */ public function onProfileEditCompleted(FilterUserResponseEvent $event) { $event->getRequest()->setLocale($event->getUser()->getLanguage()); $event->getRequest()->getSession()->set('_locale', $event->getUser()->getLanguage()); }