<?php
// src/Controller/RegistrationController.php
namespace App\Controller;
use App\Entity\AppUser;
use App\Form\RegistrationFormType;
use Symfony\Component\PasswordHasher\Hasher\UserPasswordHasherInterface;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\Session\SessionInterface;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Security\Http\Authentication\AuthenticationUtils;
/**
* @Route("/{_locale}")
*/
class SecurityController extends AbstractController
{
/**
* @Route("/login", name="security_login")
* @return \Symfony\Component\HttpFoundation\Response
*/
public function login(Request $request, UserPasswordHasherInterface $passwordHasher, AuthenticationUtils $authenticationUtils)
{
$error = '';
$lastUsername = '';
$error = $authenticationUtils->getLastAuthenticationError();
$lastUsername = $authenticationUtils->getLastUsername();
return $this->render('security/login.html.twig', [
'error' => $error,
'last_username' => $lastUsername,
]);
}
/**
* @Route("/check", name="security.check")
* @return \Symfony\Component\HttpFoundation\Response
*/
public function check(Request $request, UserPasswordHasherInterface $passwordHasher)
{
if($request->getMethod() == 'POST'){
$form->handleRequest($request);
if($form->isSubmitted()){
if($form->isValid()){
}
}
}
return $this->render('security/login.html.twig', [
]);
}
/**
* @Route("/changer-passe", name="security_changer_passe")
* @return \Symfony\Component\HttpFoundation\Response
*/
public function changerPasseAction(Request $request, UserPasswordHasherInterface $passwordHasher)
{
$em = $this->getDoctrine()
->getManager();
if($request->getMethod() == 'POST'){
$email = $request->request->get('email');
$password = $request->request->get('password');
$user = $em->getRepository(AppUser::class)
->findOneByEmail($email);
//Effacer l'ancien mot de passe
$user->setPassword('');
$hashedPassword = $passwordHasher->hashPassword($user, $password);
$user->setPassword($hashedPassword);
$em->flush();
}
return $this->render('security/changer_passe.html.twig', [
]);
}
/**
* @Route("/logout", name="security_logout")
* @return \Symfony\Component\HttpFoundation\Response
*/
/*
public function logout(Request $request)
{
return $this->render('security/login.html.twig', [
]);
}
*/
}