src/Controller/DefaultController.php line 213

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  4. use Symfony\Component\HttpFoundation\Request;
  5. use Symfony\Component\Routing\Annotation\Route;
  6. use Symfony\Component\HttpFoundation\BinaryFileResponse;
  7. use Symfony\Component\HttpFoundation\ResponseHeaderBag;
  8. class DefaultController extends AbstractController
  9. {
  10.     /**
  11.      * @Route("/", name="home")
  12.      * @Route("/contact", name="contact")
  13.      * @Route("/partenaires", name="partnaires")
  14.      * @Route("/inscription-en-ligne-particulier", name="inscription.particulier")
  15.      * @Route("/inscription-en-ligne-professionel",name="inscription.pro")
  16.      */
  17.     public function index(Request $request)
  18.     {
  19.         $routeName $request->attributes->get('_route');
  20.         if($routeName == 'home'){
  21.              return $this->render('default/index.html.twig');
  22.         }
  23.         if($routeName == 'contact'){
  24.              return $this->render('default/contact.html.twig');
  25.         }
  26.         if($routeName == 'partnaires'){
  27.             return $this->render('default/partnaire.html.twig');
  28.         }
  29.         if($routeName == 'inscription.particulier'){
  30.             $page="particulier";
  31.             return $this->render('default/inscription.html.twig',
  32.             ['page'=>$page]);
  33.         }
  34.         if($routeName == 'inscription.pro'){
  35.             $page="pro";
  36.             return $this->render('default/inscription.html.twig',
  37.             ['page'=>$page]);
  38.         }
  39.     }
  40.     /**
  41.      * @Route("/idcie/qui-sommes-nous", name="idcie.qms")
  42.      * @Route("/idcie/notre-mission", name="idcie.mission")
  43.      * @Route("/idcie/l-interet-pour-le-territoire", name="idcie.interet")
  44.      */
  45.     public function idcie(Request $request)
  46.     {
  47.         $routeName $request->attributes->get('_route');
  48.         if($routeName == 'idcie.qms'){
  49.             $rubrique "qms";
  50.             return $this->render('default/about.html.twig',[
  51.                 'rubrique'=>$rubrique
  52.         ]);
  53.         }elseif($routeName == 'idcie.mission'){
  54.             $rubrique "mission";
  55.             return $this->render('default/mission.html.twig',[
  56.                 'rubrique'=>$rubrique
  57.         ]);
  58.         }elseif($routeName == 'idcie.interet'){
  59.             $rubrique "interet";
  60.             return $this->render('default/interet.html.twig',[
  61.                 'rubrique'=>$rubrique
  62.         ]);
  63.         }   
  64.     }
  65.     /**
  66.      * @Route("/nos-services/formation-professionnelle", name="service.formation")
  67.      * @Route("/nos-services/coaching-personnel-et-professionnel", name="service.coaching")
  68.      * @Route("/nos-services/conseil-rh-aux-entreprises", name="service.conseil")
  69.      * @Route("/nos-services/consultation-entretien-retraite", name="service.retraite")
  70.      */
  71.     public function services(Request $request)
  72.     {
  73.         $routeName $request->attributes->get('_route');
  74.         if($routeName == 'service.formation'){
  75.             $service "formation";
  76.             return $this->render('default/service.html.twig',[
  77.                 'service'=>$service
  78.             ]);
  79.         }elseif($routeName == 'service.coaching'){
  80.             $service "coaching";
  81.             return $this->render('default/service.html.twig',[
  82.                 'service'=>$service
  83.             ]);
  84.         }elseif($routeName == 'service.conseil'){
  85.             $service "conseil";
  86.             return $this->render('default/service.html.twig',[
  87.                 'service'=>$service
  88.             ]);
  89.         
  90.         }elseif($routeName == 'service.retraite'){
  91.             $service "retraite";
  92.             return $this->render('default/service.html.twig',[
  93.                 'service'=>$service
  94.             ]);
  95.         }
  96.     }
  97.     /**
  98.      * @Route("/nos-formations/transitions-et-changements", name="formation.transition")
  99.      * @Route("/nos-formations/de-la-connaissance-de-soi-a-la-construction-de-son-projet", name="formation.confiance")
  100.      * @Route("/nos-formations/emotion-zen-maitrisez-votre-stress", name="formation.zen")
  101.      * @Route("/nos-formations/en-marche-vers-l-emploi", name="formation.emploi")
  102.      * @Route("/nos-formations/entreprenariat-et-creation-entreprise", name="formation.entreprise")
  103.      * @Route("/nos-formations/developpez-votre-efficacite-professionnelle", name="formation.efficacite")
  104.      * @Route("/nos-formations/consolidez-votre-projet-de-creation", name="formation.consolidez")
  105.      * @Route("/nos-formations/trouver-son-equilibre-and-glow-up", name="formation.equilibre")
  106.      * @Route("/nos-formations/je-m-inite-a-la-posture-de-coach-et-aux-nouvelles-mthodes-d-accommpagnement", name="formation.posture")
  107.      * @Route("/nos-formations/j-optimise-la-gestion-de-mon-activite-asp", name="formation.optimisation")
  108.      */
  109.     public function formation(Request $request)
  110.     {
  111.         $routeName $request->attributes->get('_route');
  112.         if($routeName == 'formation.transition'){
  113.             $formation "transition";
  114.             return $this->render('default/formation.html.twig',[
  115.                 'formation'=>$formation
  116.             ]);
  117.         }elseif($routeName == 'formation.confiance'){
  118.             $formation "confiance";
  119.             return $this->render('default/formation.html.twig',[
  120.                 'formation'=>$formation
  121.             ]);
  122.         }elseif($routeName == 'formation.zen'){
  123.             $formation "zen";
  124.             return $this->render('default/formation.html.twig',[
  125.                 'formation'=>$formation
  126.             ]);
  127.         }elseif($routeName == 'formation.emploi'){
  128.             $formation "emploi";
  129.             return $this->render('default/formation.html.twig',[
  130.                 'formation'=>$formation
  131.             ]);
  132.         }elseif($routeName == 'formation.entreprise'){
  133.             $formation "entreprise";
  134.             return $this->render('default/formation.html.twig',[
  135.                 'formation'=>$formation
  136.             ]);
  137.         }elseif($routeName == 'formation.efficacite'){
  138.             $formation "efficacite";
  139.             return $this->render('default/formation.html.twig',[
  140.                 'formation'=>$formation
  141.             ]);
  142.         }elseif($routeName == 'formation.consolidez'){
  143.             $formation "consolidez";
  144.             return $this->render('default/formation.html.twig',[
  145.                 'formation'=>$formation
  146.             ]);
  147.         }elseif($routeName == 'formation.optimisation'){
  148.             $formation "optimisation";
  149.             return $this->render('default/formation.html.twig',[
  150.                 'formation'=>$formation
  151.             ]);
  152.         }elseif($routeName == 'formation.equilibre'){
  153.             $formation "equilibre";
  154.             return $this->render('default/formation.html.twig',[
  155.                 'formation'=>$formation
  156.             ]);
  157.         }elseif($routeName == 'formation.posture'){
  158.             $formation "posture";
  159.             return $this->render('default/formation.html.twig',[
  160.                 'formation'=>$formation
  161.             ]);
  162.         }
  163.         
  164.         return $this->render('default/formation.html.twig');
  165.     }
  166.     /**
  167.      * @Route("/mention-legales", name="mention.legal")
  168.      * @Route("/conditions-d-utilisation", name="mention.conditions")
  169.      * @Route("/assistance-technique", name="mention.technique")
  170.      * @Route("/assistance-technique-et-pedagogique", name="mention.pedagogique")
  171.      * @Route("/politique-de-confidentialite", name="mention.confidentialite")
  172.      * @Route("/conditions-generales-de-vente", name="mention.cgv")
  173.      * @Route("/reglement-interieur", name="mention.reglement")
  174.      * @Route("/conditions-d-admission", name="mention.admission")
  175.      */
  176.     public function mention(Request $request)
  177.     {
  178.         $routeName $request->attributes->get('_route');
  179.         if($routeName == 'mention.legal'){
  180.             $mention "legal";
  181.             return $this->render('default/mention.html.twig',[
  182.                 'mention'=>$mention
  183.             ]);
  184.         }elseif($routeName == 'mention.conditions'){
  185.             $mention "conditions";
  186.             return $this->render('default/mention.html.twig',[
  187.                 'mention'=>$mention
  188.             ]);
  189.         }elseif($routeName == 'mention.technique'){
  190.             $mention "technique";
  191.             return $this->render('default/mention.html.twig',[
  192.                 'mention'=>$mention
  193.             ]);
  194.         
  195.         }elseif($routeName == 'mention.pedagogique'){
  196.             $mention "pedagogique";
  197.             return $this->render('default/mention.html.twig',[
  198.                 'mention'=>$mention
  199.             ]);
  200.         }elseif($routeName == 'mention.confidentialite'){
  201.             $mention "confidentialite";
  202.             return $this->render('default/mention.html.twig',[
  203.                 'mention'=>$mention
  204.         ]);
  205.         }elseif($routeName == 'mention.cgv'){
  206.             $mention "cgv";
  207.             return $this->render('default/mention.html.twig',[
  208.                 'mention'=>$mention
  209.         ]);
  210.         }elseif($routeName == 'mention.reglement'){
  211.             $mention "reglement";
  212.             return $this->render('default/mention.html.twig',[
  213.                 'mention'=>$mention
  214.         ]);
  215.         }elseif($routeName == 'mention.admission'){
  216.             $mention "admission";
  217.             return $this->render('default/mention.html.twig',[
  218.                 'mention'=>$mention
  219.         ]);
  220.         }
  221.     }
  222.      /**
  223.      * @Route("/download/pdf/{id}", name="download_pdf")
  224.      */
  225.     public function downloadPdf($id)
  226.     {
  227.         // Associe chaque ID à un fichier PDF spécifique
  228.         $pdfFiles = [
  229.             => 'fiche-programme-changement-et-transition.pdf',
  230.             => 'fiche-programme-changement-et-transition-version-courte.pdf',
  231.             => 'fiche-programme-trouver-son-equilibre-en-glow-up.pdf',
  232.             => 'fiche-programme-optimiser-la-gestion-de-votre-activite-au-quotidien.pdf',
  233.             => 'fiche-programme-je-m-initie-a-la-posture-de-coach-et-aux-nouvelles-methodes-d-accompagnement.pdf',
  234.             => 'fiche-programme-en-marche-vers-l-emploi.pdf',
  235.             => 'fiche-programme-emotions-zen-maitriser-votre-stress-pour-reveler-votre-potentiel.pdf',
  236.             => 'fiche-programme-developper-son-efficacite-professionnelle-et-votre-leadership.pdf',
  237.             => 'fiche-programme-de-la-connaissance-de-soi-a-la-construction-de-son-projet.pdf',
  238.             10 => 'fiche-programme-developper-son-efficacite-personnelle-et-professionnelle.pdf',
  239.             // Ajoute d'autres fichiers si nécessaire
  240.         ];
  241.         // Vérifie si l'ID est valide (présent dans le tableau)
  242.         if (!isset($pdfFiles[$id])) {
  243.             throw $this->createNotFoundException("Le fichier PDF demandé n'existe pas.");
  244.         }
  245.         // Récupère le nom du fichier PDF à partir de l'ID
  246.         $filename $pdfFiles[$id];
  247.         $filePath $this->getParameter('kernel.project_dir').'/public/doc/'.$filename;
  248.         // Vérifie si le fichier existe
  249.         if (!file_exists($filePath)) {
  250.             throw $this->createNotFoundException("Le fichier n'existe pas.");
  251.         }
  252.         // Crée la réponse pour envoyer le fichier
  253.         $response = new BinaryFileResponse($filePath);
  254.         $response->setContentDisposition(ResponseHeaderBag::DISPOSITION_ATTACHMENT$filename);
  255.         return $response;
  256.     }
  257. }