public function checkPostAuth(UserInterface $user) { if (!$user instanceof AdvancedUserInterface) { return; } if (!$user->isAccountNonLocked()) { $ex = new LockedException('User account is locked.'); $ex->setUser($user); throw $ex; } if (!$user->isEnabled() and $user->getStatus() == User::STATUS_BAD_EMAIL) { $ex = new DisabledException('BAD_EMAIL'); $ex->setUser($user); throw $ex; } if (!$user->isEnabled()) { $ex = new DisabledException('DISABLED'); if ($user instanceof User && $user->getConfirmationToken()) { $ex = new DisabledException('DISABLED:' . Strings::base64EncodeUrl($user->getEmail())); } $ex->setUser($user); throw $ex; } if (!$user->isAccountNonExpired()) { $ex = new AccountExpiredException('User account has expired.'); $ex->setUser($user); throw $ex; } }
public function generateUnsubscribeLink(NotificationType $type, RouterInterface $urlGen) { $email = Strings::base64EncodeUrl($this->getEmail()); return $urlGen->generate('user_unsubscribe', ['type' => $type->getId(), 'email' => $email], UrlGeneratorInterface::ABSOLUTE_URL); }
private function getUnsubscribeLink(MassMailQueue $entry, array $user) { $filter = $entry->getFilterSpec(); if (isset($filter['notificationTypeId'])) { return $this->router->generate('user_unsubscribe', ['type' => $filter['notificationTypeId'], 'email' => Strings::base64EncodeUrl($user['email'])], true); } return false; }