src/Controller/Filtro/FiltroFichajeDiarioController.php line 47

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Filtro;
  3. use App\Entity\Filtro\FiltroFichajeDiario;
  4. use App\Form\Filtro\FiltroFichajeDiarioType;
  5. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  6. use Symfony\Component\HttpFoundation\Request;
  7. use Symfony\Component\HttpFoundation\Response;
  8. use Symfony\Component\Routing\Annotation\Route;
  9. use Symfony\Component\HttpFoundation\RequestStack;
  10. #[Route('/filtro/fichajediario')]
  11. class FiltroFichajeDiarioController extends AbstractController
  12. {
  13.     #[Route('/'name'app_filtro_fichajediario_index'methods: ['GET''POST'])]
  14.     public function index(RequestStack $requestStackRequest $request): Response
  15.     {
  16.         
  17.         $session $requestStack->getSession();
  18.         $filtro = new FiltroFichajeDiario();
  19.         
  20.         if (!is_null($session->get('filtro.fichajediario'))){
  21.             $filtro unserialize($session->get('filtro.fichajediario'));
  22.         }
  23.         $form $this->createForm(FiltroFichajeDiarioType::class, $filtro);
  24.         $form->handleRequest($request);
  25.         if ($form->isSubmitted() && $form->isValid()) {
  26.             
  27.             $session->set('filtro.fichajediario'serialize($filtro));
  28.         
  29.             return $this->redirectToRoute('app_filtro_fichajediario_index', [], Response::HTTP_SEE_OTHER);
  30.         }
  31.         return $this->renderForm('filtro/fichajediario/filtro.html.twig', [
  32.             'fichajediario' => $filtro,
  33.             'form' => $form,
  34.         ]);
  35.     }
  36.     #[Route('/aplicado'name'app_filtro_fichajediario_aplicado'methods: ['GET'])]
  37.     public function aplicado(RequestStack $requestStack): Response
  38.     {
  39.         $session $requestStack->getSession();
  40.         
  41.         $filtro unserialize($session->get('filtro.fichajediario'));
  42.         if (!$filtro$filtro = new FiltroFichajeDiario();
  43.         
  44.         return $this->renderForm('filtro/fichajediario/aplicado.html.twig', [
  45.             'fichajeDiario' => $filtro,
  46.             
  47.         ]);
  48.     }
  49.     
  50.     #[Route('/limpiar'name'app_filtro_fichajediario_limpiar'methods: ['GET'])]
  51.     public function limpiar(RequestStack $requestStack): Response
  52.     {
  53.         $session $requestStack->getSession();
  54.         
  55.         $session->set('filtro.fichajediario'null);
  56.         
  57.         return $this->redirectToRoute('app_filtro_fichajediario_index', [], Response::HTTP_SEE_OTHER);
  58.     }
  59. }