mirror of
https://github.com/MarijnDoeve/TijdVoorDeTest.git
synced 2026-07-08 00:20:15 +02:00
b915d87d4a
* feat: password reset via symfonycasts/reset-password-bundle (#179) Implements the full password reset flow using the SymfonyCasts reset-password-bundle. * ci: share base layer cache between dev and prod builds * fix: use CSS form selector in tests instead of translated button text * fix: translate missing validator string for reset password email field * fix: translate reset password form labels via TranslatorInterface * ci: override MAILER_DSN to null for PHPUnit so mailer host is not required
32 lines
1.2 KiB
PHP
32 lines
1.2 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace Tvdt\Repository;
|
|
|
|
use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
|
|
use Doctrine\Persistence\ManagerRegistry;
|
|
use SymfonyCasts\Bundle\ResetPassword\Model\ResetPasswordRequestInterface;
|
|
use SymfonyCasts\Bundle\ResetPassword\Persistence\Repository\ResetPasswordRequestRepositoryTrait;
|
|
use SymfonyCasts\Bundle\ResetPassword\Persistence\ResetPasswordRequestRepositoryInterface;
|
|
use Tvdt\Entity\ResetPasswordRequest;
|
|
use Tvdt\Entity\User;
|
|
|
|
/** @extends ServiceEntityRepository<ResetPasswordRequest> */
|
|
final class ResetPasswordRequestRepository extends ServiceEntityRepository implements ResetPasswordRequestRepositoryInterface
|
|
{
|
|
use ResetPasswordRequestRepositoryTrait;
|
|
|
|
public function __construct(ManagerRegistry $registry)
|
|
{
|
|
parent::__construct($registry, ResetPasswordRequest::class);
|
|
}
|
|
|
|
public function createResetPasswordRequest(object $user, \DateTimeInterface $expiresAt, string $selector, string $hashedToken): ResetPasswordRequestInterface
|
|
{
|
|
\assert($user instanceof User);
|
|
|
|
return new ResetPasswordRequest($user, $expiresAt, $selector, $hashedToken);
|
|
}
|
|
}
|