src/Controller/Frontend/PageController.php line 262

Open in your IDE?
  1. <?php
  2. namespace App\Controller\Frontend;
  3. use App\Entity\Library;
  4. use App\Entity\Partner;
  5. use App\Entity\OurStudent;
  6. use Symfony\Component\HttpFoundation\Request;
  7. use Symfony\Component\Routing\Annotation\Route;
  8. use FOS\RestBundle\Controller\Annotations as Rest;
  9. use Symfony\Contracts\Translation\TranslatorInterface;
  10. class PageController extends BaseFrontendController
  11. {
  12.     /**
  13.      * @Rest\Get("/career-path", name="career_path")
  14.      */
  15.     public function careerPath(TranslatorInterface $translator)
  16.     {
  17.         $data['index'] = '';
  18.         $siteName $this->getParameter('site_name');
  19.         $this->addTitle($translator->trans(
  20.             'career.title',
  21.             [
  22.                 '%siteName%' => $siteName
  23.             ]
  24.         ));
  25.         $this->setDescription($translator->trans(
  26.             'career.desc',
  27.             [
  28.                 '%siteName%' => $siteName
  29.             ]
  30.         ));
  31.         return $this->render('pages/career.html.twig', [
  32.             $data
  33.         ]);
  34.     }
  35.     /**
  36.      * @Rest\Get("/english", name="page_english")
  37.      */
  38.     public function pageEnglish(TranslatorInterface $translator)
  39.     {
  40.         $siteName $this->getParameter('site_name');
  41.         $this->addTitle($translator->trans(
  42.             'english.title',
  43.             [
  44.                 '%siteName%' => $siteName
  45.             ]
  46.         ));
  47.         $this->setDescription($translator->trans(
  48.             'english.desc',
  49.             [
  50.                 '%siteName%' => $siteName
  51.             ]
  52.         ));
  53.         return $this->render('language/english.html.twig', ['campuses' => $this->campusRepo->getAll(['filter_status' => 1'sort_asc' => 'ordering'], 'ENTITY')]);
  54.     }
  55.     /**
  56.      * @Rest\Get("/china", name="page_china")
  57.      */
  58.     public function pageChina(TranslatorInterface $translator)
  59.     {
  60.         $siteName $this->getParameter('site_name');
  61.         $this->addTitle($translator->trans(
  62.             'china.title',
  63.             [
  64.                 '%siteName%' => $siteName
  65.             ]
  66.         ));
  67.         $this->setDescription($translator->trans(
  68.             'china.desc',
  69.             [
  70.                 '%siteName%' => $siteName
  71.             ]
  72.         ));
  73.         return $this->render('language/china.html.twig', ['campuses' => $this->campusRepo->getAll(['filter_status' => 1'sort_asc' => 'ordering'], 'ENTITY')]);
  74.     }
  75.     /**
  76.      * @Rest\Get("/accreditations-academic-partners", name="accreditations_academic_partners")
  77.      */
  78.     public function partnersPath(TranslatorInterface $translator)
  79.     {
  80.         $data['index'] = '';
  81.         $siteName $this->getParameter('site_name');
  82.         $this->addTitle($translator->trans(
  83.             'partners.title',
  84.             [
  85.                 '%siteName%' => $siteName
  86.             ]
  87.         ));
  88.         $this->setDescription($translator->trans(
  89.             'partners.desc',
  90.             [
  91.                 '%siteName%' => $siteName
  92.             ]
  93.         ));
  94.         return $this->render('pages/partners.html.twig', [
  95.             $data
  96.         ]);
  97.     }
  98.     /**
  99.      * @Route("/{_locale}/lalternance-comment-ca-marche", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="alternance")
  100.      */
  101.     public function alternance(TranslatorInterface $translator)
  102.     {
  103.         $siteName $this->getParameter('site_name');
  104.         $this->addTitle($translator->trans(
  105.             'alternance.title',
  106.             [
  107.                 '%siteName%' => $siteName
  108.             ]
  109.         ));
  110.         $this->setDescription($translator->trans(
  111.             'alternance.desc',
  112.             [
  113.                 '%siteName%' => $siteName
  114.             ]
  115.         ));
  116.         return $this->render('pages/alternance.html.twig');
  117.     }
  118.     /**
  119.      * @Route("/{_locale}/temoignages-de-nos-etudiants", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="page.our_student")
  120.      */
  121.     public function ourStudent(TranslatorInterface $translator)
  122.     {
  123.         $siteName $translator->trans('siteName');
  124.         $this->addTitle($translator->trans(
  125.             'our_student.title',
  126.             [
  127.                 '%siteName%' => $siteName
  128.             ]
  129.         ));
  130.         $this->setDescription($translator->trans(
  131.             'our_student.desc',
  132.             [
  133.                 '%siteName%' => $siteName
  134.             ]
  135.         ));
  136.         $data['outStudentArticles'] = $this->ourStudentRepo->getAllOurStudentByType(OurStudent::TYPE_ARTICLE);
  137.         $data['outStudentVideos']   = $this->ourStudentRepo->getAllOurStudentByType(OurStudent::TYPE_VIDEO);
  138.         return $this->render('pages/our_student.html.twig'$data);
  139.     }
  140.     /**
  141.      * @Route("/{_locale}/lecole-en-images", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="page.estiam_en_images")
  142.      */
  143.     public function estiamEnImages(TranslatorInterface $translator)
  144.     {
  145.         $siteName $translator->trans('siteName');
  146.         $videos $this->libraryService->getListByType(Library::TYPE_VIDEO);
  147.         $photos $this->libraryService->getListByType(Library::TYPE_PHOTO);
  148.         $this->addTitle($translator->trans(
  149.             'estiam_en_images.title',
  150.             [
  151.                 '%siteName%' => $siteName
  152.             ]
  153.         ));
  154.         $this->setDescription($translator->trans('estiam_en_images.desc'));
  155.         return $this->render('pages/estiam_en_images.html.twig', [
  156.             'videos' => $videos,
  157.             'photos' => $photos
  158.         ]);
  159.     }
  160.     /**
  161.      * @Route("/{_locale}/faq", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="faq")
  162.      */
  163.     public function faq(TranslatorInterface $translator)
  164.     {
  165.         $siteName $translator->trans('siteName');
  166.         $this->addTitle($translator->trans(
  167.             'faq.title',
  168.             [
  169.                 '%siteName%' => $siteName
  170.             ]
  171.         ));
  172.         $this->setDescription($translator->trans('faq.desc'));
  173.         $data['topics'] = $this->topicRepo->getAll(
  174.             ['sort_asc' => 'ordering']
  175.         );
  176.         return $this->render('pages/faq.html.twig'$data);
  177.     }
  178.     /**
  179.      * @Route("/{_locale}/nos-campus", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="campus.index")
  180.      */
  181.     public function campus(TranslatorInterface $translatorRequest $request)
  182.     {
  183.         $siteName $this->getParameter('site_name');
  184.         $this->addTitle($translator->trans(
  185.             'campus.title',
  186.             [
  187.                 '%siteName%' => $siteName
  188.             ]
  189.         ));
  190.         $this->setDescription($translator->trans(
  191.             'campus.desc',
  192.             [
  193.                 '%siteName%' => $siteName
  194.             ]
  195.         ));
  196.         
  197.         // list center with center gmap location
  198.         $country '';
  199.         try {
  200.             $ip $request->getClientIp();
  201.             $country = @json_decode(file_get_contents("http://www.geoplugin.net/json.gp?ip=" $ip))->geoplugin_countryCode;
  202.         } catch (\Exception $e) {
  203.             $country '';
  204.         }
  205.         if(empty($country)) {
  206.             try {
  207.                 $ip $request->headers->get('X-Forwarded-For');
  208.                 $country = @json_decode(file_get_contents("http://www.geoplugin.net/json.gp?ip=" $ip))->geoplugin_countryCode;
  209.             } catch (\Exception $e) {
  210.                 $country $ip;
  211.             }
  212.         }
  213.         
  214.            
  215.         return $this->render(
  216.             'campus/index.html.twig',
  217.             [
  218.                 'centers' => $this->campusService->getCenterMapLocationList(),
  219.                 'campuses' => $this->campusRepo->getAll(['filter_status' => 1'sort_asc' => 'ordering'], 'ENTITY'),
  220.                 'country' => $country
  221.             ]
  222.         );
  223.     }
  224.     /**
  225.      * @Route("/{_locale}/nos-campus/{slug}", requirements={"_locale": "en|fr", "slug": "[a-zA-Z0-9\-]+"}, defaults={"_locale"="fr"}, name="campus_detail")
  226.      */
  227.     public function campusDetail($slugTranslatorInterface $translator)
  228.     {
  229.         $campus $this->campusRepo->findOneBy(['slug' => $slug]);
  230.         if (!$campus) {
  231.             throw $this->createNotFoundException('');
  232.         }
  233.         $this->addTitle(empty($campus->getSeoTitle()) ? ($translator->trans('ÉSTIAM - Découvrez campus') . ' ' $campus->getName()) : $campus->getSeoTitle());
  234.         $this->setDescription(empty($campus->getSeoDescription()) ? $translator->trans(
  235.             'campus_detail.desc',
  236.             [
  237.                 '%campusName%' => $campus->getName()
  238.             ]
  239.         ) : $campus->getSeoDescription());
  240.         
  241.         $centerLocationList $this->campusService->getCenterMapLocationList($campus'campus/centerMapInfoSingle.html.twig');
  242.         $jpos $this->openDayRepo->getListByCampusId($campus->getId());
  243.         return $this->render(
  244.             'campus/detail.html.twig',
  245.             [
  246.                 'campus' => $campus,
  247.                 'jpos'   => $jpos,
  248.                 'outStudentArticles' => $this->ourStudentRepo->getAllOurStudentByType(OurStudent::TYPE_ARTICLE5),
  249.                 'centerLocationList' => $centerLocationList
  250.             ]
  251.         );
  252.     }
  253.     /**
  254.      * @Route("/{_locale}/nos-valeurs", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="nos_valeurs")
  255.      */
  256.     public function nosValeurs(TranslatorInterface $translator)
  257.     {
  258.         $siteName $this->getParameter('site_name');
  259.         $this->addTitle($translator->trans(
  260.             'nos_valeurs.title',
  261.             [
  262.                 '%siteName%' => $siteName
  263.             ]
  264.         ));
  265.         $this->setDescription($translator->trans(
  266.             'nos_valeurs.desc',
  267.             [
  268.                 '%siteName%' => $siteName
  269.             ]
  270.         ));
  271.         return $this->render('ecole/nos_valeurs.html.twig');
  272.     }
  273.     /**
  274.      * @Route("/{_locale}/l-ecole-pourquoi-etudier-a-estiam", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="etudier_estiam")
  275.      */
  276.     public function etudierEstiam(TranslatorInterface $translator)
  277.     {
  278.         $siteName $this->getParameter('site_name');
  279.         $this->addTitle($translator->trans(
  280.             'etudier_estiam.title',
  281.             [
  282.                 '%siteName%' => $siteName
  283.             ]
  284.         ));
  285.         $this->setDescription($translator->trans(
  286.             'etudier_estiam.desc',
  287.             [
  288.                 '%siteName%' => $siteName
  289.             ]
  290.         ));
  291.         return $this->render('ecole/etudier_estiam.html.twig');
  292.     }
  293.     /**
  294.      * @Route("/{_locale}/notre-pedagogie", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="pedagogie")
  295.      */
  296.     public function pedagogie(TranslatorInterface $translator)
  297.     {
  298.         $siteName $this->getParameter('site_name');
  299.         $this->addTitle($translator->trans(
  300.             'pedagogie.title',
  301.             [
  302.                 '%siteName%' => $siteName
  303.             ]
  304.         ));
  305.         $this->setDescription($translator->trans(
  306.             'pedagogie.desc',
  307.             [
  308.                 '%siteName%' => $siteName
  309.             ]
  310.         ));
  311.         return $this->render('ecole/pedagogie.html.twig');
  312.     }
  313.     /**
  314.      * @Route("/{_locale}/cursus-et-specialisations", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="cursus")
  315.      */
  316.     public function cursus(TranslatorInterface $translator)
  317.     {
  318.         $siteName $this->getParameter('site_name');
  319.         $this->addTitle($translator->trans(
  320.             'cursus.title',
  321.             [
  322.                 '%siteName%' => $siteName
  323.             ]
  324.         ));
  325.         $this->setDescription($translator->trans(
  326.             'cursus.desc',
  327.             [
  328.                 '%siteName%' => $siteName
  329.             ]
  330.         ));
  331.         return $this->render('ecole/cursus.html.twig');
  332.     }
  333.     /**
  334.      * @Route("/{_locale}/habilitations-et-qualite", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="habilitations")
  335.      */
  336.     public function habilitations(TranslatorInterface $translator)
  337.     {
  338.         $siteName $this->getParameter('site_name');
  339.         $this->addTitle($translator->trans(
  340.             'habilitations.title',
  341.             [
  342.                 '%siteName%' => $siteName
  343.             ]
  344.         ));
  345.         $this->setDescription($translator->trans(
  346.             'habilitations.desc',
  347.             [
  348.                 '%siteName%' => $siteName
  349.             ]
  350.         ));
  351.         $data['partners'] = $this->partnerRepo->getAll(['filter_status' => Partner::STATUS_ACTIVE], 'App\DTO\Partner\PartnerOutput');
  352.         return $this->render('ecole/habilitations.html.twig'$data);
  353.     }
  354.     /**
  355.      * @Route("/{_locale}/conseil-de-perfectionnement", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="conseil")
  356.      */
  357.     public function conseil(TranslatorInterface $translator)
  358.     {
  359.         $siteName $this->getParameter('site_name');
  360.         $this->addTitle($translator->trans(
  361.             'conseil.title',
  362.             [
  363.                 '%siteName%' => $siteName
  364.             ]
  365.         ));
  366.         $this->setDescription($translator->trans(
  367.             'conseil.desc',
  368.             [
  369.                 '%siteName%' => $siteName
  370.             ]
  371.         ));
  372.         return $this->render('ecole/conseil.html.twig');
  373.     }
  374.     /**
  375.      * @Route("/{_locale}/etudier-en-situation-de-handicap", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="etudier_handicap")
  376.      */
  377.     public function etudierHandicap(TranslatorInterface $translator)
  378.     {
  379.         $siteName $this->getParameter('site_name');
  380.         $this->addTitle($translator->trans(
  381.             'etudier_handicap.title',
  382.             [
  383.                 '%siteName%' => $siteName
  384.             ]
  385.         ));
  386.         $this->setDescription($translator->trans(
  387.             'etudier_handicap.desc',
  388.             [
  389.                 '%siteName%' => $siteName
  390.             ]
  391.         ));
  392.         return $this->render('ecole/etudier_handicap.html.twig');
  393.     }
  394.     /**
  395.      * @Route("/{_locale}/apply-offre", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="apply_offre")
  396.      */
  397.     public function applyOffre(TranslatorInterface $translator)
  398.     {
  399.         $siteName $this->getParameter('site_name');
  400.         $this->addTitle($translator->trans(
  401.             'offres.title',
  402.             [
  403.                 '%siteName%' => $siteName
  404.             ]
  405.         ));
  406.         $this->setDescription($translator->trans(
  407.             'offres.desc',
  408.             [
  409.                 '%siteName%' => $siteName
  410.             ]
  411.         ));
  412.         return $this->render('entreprises/apply_offre.html.twig');
  413.     }
  414.     /**
  415.      * @Route("/{_locale}/comment-integrer-un-de-nos-etudiants-dans-votre-entreprise", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="integrer_etudiants")
  416.      */
  417.     public function integrerEtudiants(TranslatorInterface $translator)
  418.     {
  419.         $this->addTitle($translator->trans(
  420.             'integrer_etudiants.title'
  421.         ));
  422.         $this->setDescription($translator->trans(
  423.             'integrer_etudiants.desc'
  424.         ));
  425.         return $this->render('entreprises/integrer_etudiants.html.twig');
  426.     }
  427.     /**
  428.      * @Route("/{_locale}/cga", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="cga")
  429.      */
  430.     public function cga(TranslatorInterface $translator)
  431.     {
  432.         $siteName $this->getParameter('site_name');
  433.         $this->addTitle($translator->trans(
  434.             'cga.title',
  435.             [
  436.                 '%siteName%' => $siteName
  437.             ]
  438.         ));
  439.         $this->setDescription($translator->trans(
  440.             'cga.desc',
  441.             [
  442.                 '%siteName%' => $siteName
  443.             ]
  444.         ));
  445.         return $this->render('policy/cga.html.twig');
  446.     }
  447.     /**
  448.      * @Route("/{_locale}/cgi", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="cgi")
  449.      */
  450.     public function cgi(TranslatorInterface $translator)
  451.     {
  452.         $siteName $this->getParameter('site_name');
  453.         $this->addTitle($translator->trans(
  454.             'cgi.title',
  455.             [
  456.                 '%siteName%' => $siteName
  457.             ]
  458.         ));
  459.         $this->setDescription($translator->trans(
  460.             'cgi.desc',
  461.             [
  462.                 '%siteName%' => $siteName
  463.             ]
  464.         ));
  465.         return $this->render('policy/cgi.html.twig');
  466.     }
  467.     /**
  468.      * @Route("/{_locale}/cgv", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="cgv")
  469.      */
  470.     public function cgv(TranslatorInterface $translator)
  471.     {
  472.         $siteName $this->getParameter('site_name');
  473.         $this->addTitle($translator->trans(
  474.             'cgv.title',
  475.             [
  476.                 '%siteName%' => $siteName
  477.             ]
  478.         ));
  479.         $this->setDescription($translator->trans(
  480.             'cgv.desc',
  481.             [
  482.                 '%siteName%' => $siteName
  483.             ]
  484.         ));
  485.         return $this->render('policy/cgv.html.twig');
  486.     }
  487.     /**
  488.      * @Route("/{_locale}/charte-utilisation", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="charte_utilisation")
  489.      */
  490.     public function charteUtilisation(TranslatorInterface $translator)
  491.     {
  492.         $siteName $this->getParameter('site_name');
  493.         $this->addTitle($translator->trans(
  494.             'charte_utilisation.title',
  495.             [
  496.                 '%siteName%' => $siteName
  497.             ]
  498.         ));
  499.         $this->setDescription($translator->trans(
  500.             'charte_utilisation.desc',
  501.             [
  502.                 '%siteName%' => $siteName
  503.             ]
  504.         ));
  505.         return $this->render('policy/charte_utilisation.html.twig');
  506.     }
  507.     /**
  508.      * @Route("/{_locale}/reglement-interieur", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="reglement_interieur")
  509.      */
  510.     public function reglementInterieur(TranslatorInterface $translator)
  511.     {
  512.         $siteName $this->getParameter('site_name');
  513.         $this->addTitle($translator->trans(
  514.             'reglement_interieur.title',
  515.             [
  516.                 '%siteName%' => $siteName
  517.             ]
  518.         ));
  519.         $this->setDescription($translator->trans(
  520.             'reglement_interieur.desc',
  521.             [
  522.                 '%siteName%' => $siteName
  523.             ]
  524.         ));
  525.         return $this->render('policy/reglement_interieur.html.twig');
  526.     }
  527.     /**
  528.      * @Route("/{_locale}/mentions-legales", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="mentions_legales")
  529.      */
  530.     public function mentionsLegales(TranslatorInterface $translator)
  531.     {
  532.         $siteName $this->getParameter('site_name');
  533.         $this->addTitle($translator->trans(
  534.             'mentions_legales.title',
  535.             [
  536.                 '%siteName%' => $siteName
  537.             ]
  538.         ));
  539.         $this->setDescription($translator->trans(
  540.             'mentions_legales.desc',
  541.             [
  542.                 '%siteName%' => $siteName
  543.             ]
  544.         ));
  545.         return $this->render('policy/mentions_legales.html.twig');
  546.     }
  547.     /**
  548.      * @Route("/{_locale}/reglement-des-etudes", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="reglement_etudes")
  549.      */
  550.     public function reglementEtudes(TranslatorInterface $translator)
  551.     {
  552.         $siteName $this->getParameter('site_name');
  553.         $this->addTitle($translator->trans(
  554.             'reglement_etudes.title',
  555.             [
  556.                 '%siteName%' => $siteName
  557.             ]
  558.         ));
  559.         $this->setDescription($translator->trans(
  560.             'reglement_etudes.desc',
  561.             [
  562.                 '%siteName%' => $siteName
  563.             ]
  564.         ));
  565.         return $this->render('policy/reglement_etudes.html.twig');
  566.     }
  567.     /**
  568.      * @Route("/{_locale}/satisfaction-etudiants", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="satisfaction_etudiants")
  569.      */
  570.     public function satisfactionEtudiants(TranslatorInterface $translator)
  571.     {
  572.         $siteName $this->getParameter('site_name');
  573.         $this->addTitle($translator->trans(
  574.             'satisfaction_etudiants.title',
  575.             [
  576.                 '%siteName%' => $siteName
  577.             ]
  578.         ));
  579.         $this->setDescription($translator->trans(
  580.             'satisfaction_etudiants.desc',
  581.             [
  582.                 '%siteName%' => $siteName
  583.             ]
  584.         ));
  585.         return $this->render('pages/satisfaction_etudiants.html.twig');
  586.     }
  587.     /**
  588.      * @Route("/{_locale}/bons-plans-etudiants-estiam", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="bons_aide")
  589.      */
  590.     public function bonsAide(TranslatorInterface $translator)
  591.     {
  592.         $siteName $this->getParameter('site_name');
  593.         $this->addTitle($translator->trans(
  594.             'bons_aide.title',
  595.             [
  596.                 '%siteName%' => $siteName
  597.             ]
  598.         ));
  599.         $this->setDescription($translator->trans(
  600.             'bons_aide.desc',
  601.             [
  602.                 '%siteName%' => $siteName
  603.             ]
  604.         ));
  605.         return $this->render('bons/aide.html.twig');
  606.     }
  607.     /**
  608.      * @Route("/{_locale}/bons-plans-etudiants-voyagez", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="bons_voyagez")
  609.      */
  610.     public function bonsVoyages(TranslatorInterface $translator)
  611.     {
  612.         $siteName $this->getParameter('site_name');
  613.         $this->addTitle($translator->trans(
  614.             'bons_aide.title',
  615.             [
  616.                 '%siteName%' => $siteName
  617.             ]
  618.         ));
  619.         $this->setDescription($translator->trans(
  620.             'bons_aide.desc',
  621.             [
  622.                 '%siteName%' => $siteName
  623.             ]
  624.         ));
  625.         return $this->render('bons/voyagez.html.twig');
  626.     }
  627.     /**
  628.      * @Route("/{_locale}/bons-plans-etudiants-permis", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="bons_permis")
  629.      */
  630.     public function bonsPermis(TranslatorInterface $translator)
  631.     {
  632.         $siteName $this->getParameter('site_name');
  633.         $this->addTitle($translator->trans(
  634.             'bons_aide.title',
  635.             [
  636.                 '%siteName%' => $siteName
  637.             ]
  638.         ));
  639.         $this->setDescription($translator->trans(
  640.             'bons_aide.desc',
  641.             [
  642.                 '%siteName%' => $siteName
  643.             ]
  644.         ));
  645.         return $this->render('bons/permis.html.twig');
  646.     }
  647.     /**
  648.      * @Route("/{_locale}/bons-plans-etudiants-informatique", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="bons_informatique")
  649.      */
  650.     public function bonsInformatique(TranslatorInterface $translator)
  651.     {
  652.         $siteName $this->getParameter('site_name');
  653.         $this->addTitle($translator->trans(
  654.             'bons_aide.title',
  655.             [
  656.                 '%siteName%' => $siteName
  657.             ]
  658.         ));
  659.         $this->setDescription($translator->trans(
  660.             'bons_aide.desc',
  661.             [
  662.                 '%siteName%' => $siteName
  663.             ]
  664.         ));
  665.         return $this->render('bons/informatique.html.twig');
  666.     }
  667.     /**
  668.      * @Route("/{_locale}/bons-plans-etudiants-cultivez", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="bons_cultivez")
  669.      */
  670.     public function bonsCultivez(TranslatorInterface $translator)
  671.     {
  672.         $siteName $this->getParameter('site_name');
  673.         $this->addTitle($translator->trans(
  674.             'bons_aide.title',
  675.             [
  676.                 '%siteName%' => $siteName
  677.             ]
  678.         ));
  679.         $this->setDescription($translator->trans(
  680.             'bons_aide.desc',
  681.             [
  682.                 '%siteName%' => $siteName
  683.             ]
  684.         ));
  685.         return $this->render('bons/cultivez.html.twig');
  686.     }
  687.     /**
  688.      * @Route("/{_locale}/bons-plans-etudiants-shopping", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="bons_shopping")
  689.      */
  690.     public function bonsShopping(TranslatorInterface $translator)
  691.     {
  692.         $siteName $this->getParameter('site_name');
  693.         $this->addTitle($translator->trans(
  694.             'bons_aide.title',
  695.             [
  696.                 '%siteName%' => $siteName
  697.             ]
  698.         ));
  699.         $this->setDescription($translator->trans(
  700.             'bons_aide.desc',
  701.             [
  702.                 '%siteName%' => $siteName
  703.             ]
  704.         ));
  705.         return $this->render('bons/shopping.html.twig');
  706.     }
  707.     /**
  708.      * @Route("/{_locale}/logement-etudiant-paris-colette-estiam", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="bons_aide1")
  709.      */
  710.     public function bonsAide1(TranslatorInterface $translator)
  711.     {
  712.         $siteName $this->getParameter('site_name');
  713.         $this->addTitle($translator->trans(
  714.             'bons_aide1.title',
  715.             [
  716.                 '%siteName%' => $siteName
  717.             ]
  718.         ));
  719.         $this->setDescription($translator->trans(
  720.             'bons_aide1.desc',
  721.             [
  722.                 '%siteName%' => $siteName
  723.             ]
  724.         ));
  725.         return $this->render('bons/aide-1.html.twig');
  726.     }
  727.     /**
  728.      * @Route("/{_locale}/emmenagement-facile-estiam-mondopal", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="bons_aide2")
  729.      */
  730.     public function bonsAide2(TranslatorInterface $translator)
  731.     {
  732.         $siteName $this->getParameter('site_name');
  733.         $this->addTitle($translator->trans(
  734.             'bons_aide2.title',
  735.             [
  736.                 '%siteName%' => $siteName
  737.             ]
  738.         ));
  739.         $this->setDescription($translator->trans(
  740.             'bons_aide2.desc',
  741.             [
  742.                 '%siteName%' => $siteName
  743.             ]
  744.         ));
  745.         return $this->render('bons/aide-2.html.twig');
  746.     }
  747.     /**
  748.      * @Route("/{_locale}/logement-etudiant-smartgarant-estiam", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="bons_aide3")
  749.      */
  750.     public function bonsAide3(TranslatorInterface $translator)
  751.     {
  752.         $siteName $this->getParameter('site_name');
  753.         $this->addTitle($translator->trans(
  754.             'bons_aide3.title',
  755.             [
  756.                 '%siteName%' => $siteName
  757.             ]
  758.         ));
  759.         $this->setDescription($translator->trans(
  760.             'bons_aide3.desc',
  761.             [
  762.                 '%siteName%' => $siteName
  763.             ]
  764.         ));
  765.         return $this->render('bons/aide-3.html.twig');
  766.     }
  767.     /**
  768.      * @Route("/{_locale}/conseil-recherche-logement", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="bons_aide4")
  769.      */
  770.     public function bonsAide4(TranslatorInterface $translator)
  771.     {
  772.         $siteName $this->getParameter('site_name');
  773.         $this->addTitle($translator->trans(
  774.             'bons_aide4.title',
  775.             [
  776.                 '%siteName%' => $siteName
  777.             ]
  778.         ));
  779.         $this->setDescription($translator->trans(
  780.             'bons_aide4.desc',
  781.             [
  782.                 '%siteName%' => $siteName
  783.             ]
  784.         ));
  785.         return $this->render('bons/aide-4.html.twig');
  786.     }
  787.     /**
  788.      * @Route("/{_locale}/autofinancement-des-etudes", requirements={"_locale": "en|fr"}, defaults={"_locale"="fr"}, name="autofinancement")
  789.      */
  790.     public function autofinancement(TranslatorInterface $translator)
  791.     {
  792.         $siteName $this->getParameter('site_name');
  793.         $this->addTitle($translator->trans(
  794.             'autofinancement.title',
  795.             [
  796.                 '%siteName%' => $siteName
  797.             ]
  798.         ));
  799.         $this->setDescription($translator->trans(
  800.             'autofinancement.desc',
  801.             [
  802.                 '%siteName%' => $siteName
  803.             ]
  804.         ));
  805.         return $this->render('alternance/autofinancement.html.twig');
  806.     }
  807. }