src/Controller/PageController.php line 16

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Entity\User;
  4. use Doctrine\Persistence\ManagerRegistry;
  5. use Symfony\Component\Routing\Annotation\Route;
  6. use Symfony\Component\HttpFoundation\Request;
  7. use Symfony\Component\Security\Core\Security;
  8. class PageController extends BaseController
  9. {
  10.     /**
  11.      * @Route("/", name="index")
  12.      */
  13.     public function index(Security $security)
  14.     {
  15.         $user $security->getUser();
  16.         if($user == null){
  17.             return $this->redirectToRoute('app_login');
  18.         }else{
  19.             return $this->redirectToRoute('account_dashboard');
  20.         }
  21.     }
  22.     /**
  23.      * @Route("/mot-de-passe-oublie", name="forgot_password")
  24.      * @param Request $request
  25.      */
  26.     public function forgot_password(Request $requestSecurity $security)
  27.     {
  28.         $user $security->getUser();
  29.         if($user != null){
  30.             return $this->redirectToRoute('account_dashboard');
  31.         }
  32.         $seo = [
  33.             'title' => 'Mot de passe oublié ? - Emys Sodiclair',
  34.             'description' => '',
  35.             'keywords' => ''
  36.         ];
  37.         return $this->generateTemplate('forgot_password', [
  38.             'seo' => $seo
  39.         ]);
  40.     }
  41.     /**
  42.      * @Route("/reinitialisation-mot-de-passe/{token}", name="forgot_password_reset")
  43.      * @param Request $request
  44.      */
  45.     public function forgot_password_reset(Request $requestSecurity $security$token,ManagerRegistry $doctrine)
  46.     {
  47.         $user $doctrine->getManager()->getRepository(User::class)->findOneBy([
  48.             'forgot_token' => $token
  49.         ]);
  50.         if($user == null){
  51.             return $this->redirectToRoute('forgot_password');
  52.         }
  53.         $datetime_forget $user->getForgotTime();
  54.         $datetime_now = new \DateTime('NOW');
  55.         if($datetime_now $datetime_forget){
  56.             return $this->redirectToRoute('forgot_password');
  57.         }
  58.         $seo = [
  59.             'title' => 'Réinitialisation de votre de passe - Emys Sodiclair',
  60.             'description' => '',
  61.             'keywords' => ''
  62.         ];
  63.         return $this->generateTemplate('reset_password', [
  64.             'seo' => $seo,
  65.             'reset_token' => $token
  66.         ]);
  67.     }
  68. }