feat: use timestamp instead of bool on is_verified

This commit is contained in:
Maël Gangloff
2025-10-04 12:24:20 +02:00
parent b3d75228e9
commit 79589e63eb
6 changed files with 66 additions and 11 deletions

View File

@@ -47,7 +47,7 @@ readonly class EmailVerifier
{
$this->verifyEmailHelper->validateEmailConfirmationFromRequest($request, (string) $user->getId(), $user->getEmail());
$user->setVerified(true);
$user->setVerifiedAt(new \DateTimeImmutable());
$this->entityManager->persist($user);
$this->entityManager->flush();

View File

@@ -33,7 +33,7 @@ class JWTAuthenticator implements AuthenticationSuccessHandlerInterface
public function handleAuthenticationSuccess(UserInterface $user, $jwt = null): Response
{
if (($user instanceof User) && !$user->isVerified()) {
if (($user instanceof User) && null === $user->getVerifiedAt()) {
throw new AccessDeniedHttpException('You have not yet validated your email address.');
}

View File

@@ -57,8 +57,8 @@ class OAuthAuthenticator extends OAuth2Authenticator implements AuthenticationEn
return $existingUser;
}
$user = new User();
$user->setEmail($userFromToken->getEmail())->setVerified(true);
$user = (new User())->setCreatedAt(new \DateTimeImmutable());
$user->setEmail($userFromToken->getEmail())->setVerifiedAt($user->getCreatedAt());
$this->em->persist($user);
$this->em->flush();