fix: blocks pw resets when auth method = oidc
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
namespace App\User\Framework\Controller\Web;
|
namespace App\User\Framework\Controller\Web;
|
||||||
|
|
||||||
|
use App\Base\ConfigResolver;
|
||||||
use App\User\Framework\Entity\User;
|
use App\User\Framework\Entity\User;
|
||||||
use App\User\Framework\Form\ChangePasswordForm;
|
use App\User\Framework\Form\ChangePasswordForm;
|
||||||
use App\User\Framework\Form\ResetPasswordRequestForm;
|
use App\User\Framework\Form\ResetPasswordRequestForm;
|
||||||
@@ -29,6 +30,7 @@ class ResetPasswordController extends AbstractController
|
|||||||
public function __construct(
|
public function __construct(
|
||||||
private ResetPasswordHelperInterface $resetPasswordHelper,
|
private ResetPasswordHelperInterface $resetPasswordHelper,
|
||||||
private EntityManagerInterface $entityManager,
|
private EntityManagerInterface $entityManager,
|
||||||
|
private readonly ConfigResolver $configResolver,
|
||||||
private readonly Security $security
|
private readonly Security $security
|
||||||
) {
|
) {
|
||||||
}
|
}
|
||||||
@@ -45,6 +47,13 @@ class ResetPasswordController extends AbstractController
|
|||||||
$form = $this->createForm(ResetPasswordRequestForm::class);
|
$form = $this->createForm(ResetPasswordRequestForm::class);
|
||||||
$form->handleRequest($request);
|
$form->handleRequest($request);
|
||||||
|
|
||||||
|
if ($this->configResolver->authIs('oidc')) {
|
||||||
|
$this->addFlash('reset_password_error', 'Your auth method is set to "oidc", so you will need to reset your password with your identity provider.');
|
||||||
|
return $this->render('user/reset_password/request.html.twig', [
|
||||||
|
'requestForm' => $form,
|
||||||
|
])->setStatusCode(Response::HTTP_ACCEPTED);
|
||||||
|
}
|
||||||
|
|
||||||
if ($form->isSubmitted() && $form->isValid()) {
|
if ($form->isSubmitted() && $form->isValid()) {
|
||||||
/** @var string $email */
|
/** @var string $email */
|
||||||
$email = $form->get('email')->getData();
|
$email = $form->get('email')->getData();
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
<form name="reset_password_request_form" method="post" class="flex flex-col gap-2">
|
<form name="reset_password_request_form" method="post" class="flex flex-col gap-2">
|
||||||
{% for flash_error in app.flashes('reset_password_error') %}
|
{% for flash_error in app.flashes('reset_password_error') %}
|
||||||
<div class="mb-3 p-2 bg-rose-500 text-black text-semibold rounded-md" role="alert">{{ flash_error }}</div>
|
<div class="mb-3 p-2 bg-rose-500 text-black font-semibold rounded-md" role="alert">{{ flash_error }}</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
<label for="reset_password_request_form_email" class="required flex flex-col mb-2">
|
<label for="reset_password_request_form_email" class="required flex flex-col mb-2">
|
||||||
|
|||||||
Reference in New Issue
Block a user