src/Controller/WidgetController.php line 35
<?phpnamespace App\Controller;use App\Repository\ActualiteRepository;use App\Repository\AgendaRepository;use App\Repository\FormationRepository;use App\Repository\OffreEmploiRepository;use App\Repository\OptionsRepository;use App\Repository\PageRepository;use App\Repository\PoleRepository;use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;use Symfony\Component\HttpFoundation\Request;use Symfony\Component\HttpFoundation\Response;class WidgetController extends AbstractController{public function header(OptionsRepository $optionsRepository,int $idPostType = null,string $controllerEditName = null,PoleRepository $poleRepository): Response {$informations = $optionsRepository->findBy(['name' => ['information', 'informationIsCritique']]);$poles = $poleRepository->findAll();return $this->render('front/includes/_header.html.twig', ['poles' => $poles,'informations' => $informations,'idPostType' => $idPostType,'controllerEditName' => $controllerEditName,]);}public function footer(OptionsRepository $optionsRepository): Response{$options = $optionsRepository->flush();return $this->render('front/includes/_footer.html.twig', ['options' => $options,]);}public function breadcrumb(Request $request,ActualiteRepository $actualiteRepository,AgendaRepository $evenementRepository,FormationRepository $formationRepository,PageRepository $pageRepository,PoleRepository $poleRepository,OffreEmploiRepository $offreEmploiRepository): Response {$filariane = [];$path = explode('/', $request->getPathInfo());$url = array_splice($path, 1);$pole = $poleRepository->findOneBy(['name' => $request->get('pole')]);switch (true) {case str_contains($url[0], 'actualite'):if (1 < \count($url)) {$actualite = $actualiteRepository->find($url[1]);if (!$actualite) {$actualite = $actualiteRepository->findOneBy(['slug' => $url[1]]);}if (null !== $pole) {$urlPole = $this->generateUrl('page_front_slug', ['slug' => $pole->getUrlPole()->getSlug(),]);$filariane = [['pole' => $pole->getName(), 'url' => $urlPole],['titre' => 'Actualités'],['titre' => $$actualite->getTitre()],];// $filariane = [$pole->getName(), 'Actualités', $actualite->getTitre()];} else {$filariane = [['pole' => 'Actualités', 'url' => '#'],['titre' => $actualite->getTitre()],];}} else {if (null !== $pole) {$urlPole = $this->generateUrl('page_front_slug', ['slug' => $pole->getUrlPole()->getSlug(),]);$filariane = [['pole' => $pole->getName(), 'url' => $urlPole],['titre' => 'Actualités'],];// $filariane = [$pole->getName(), 'Actualités'];} else {$filariane = [['pole' => 'Actualités']];}}break;case str_contains($url[0], 'evenement'):if (1 < \count($url)) {$evenement = $evenementRepository->find($url[1]);if (!$evenement) {$evenement = $evenementRepository->findOneBy(['slug' => $url[1]]);}if (null !== $pole) {$urlPole = $this->generateUrl('page_front_slug', ['slug' => $pole->getUrlPole()->getSlug(),]);$filariane = [['pole' => $pole->getName(), 'url' => $urlPole],['titre' => 'Agenda'],['titre' => $evenement->getTitre()],];// $filariane = [$pole->getName(), 'Agenda', $evenement->getTitre()];} else {$urlPole = $this->generateUrl('page_front_slug', ['slug' => $evenement->getPoleId()->getUrlPole()->getSlug(),]);$filariane = [['pole' => $evenement->getPoleId()->getName(), 'url' => $urlPole],['titre' => $evenement->getTitre()],];// $filariane = ['Agenda', $evenement->getTitre()];}} else {if (null !== $pole) {$urlPole = $this->generateUrl('page_front_slug', ['slug' => $pole->getUrlPole()->getSlug(),]);$filariane = [['pole' => $pole->getName(), 'url' => $urlPole],['titre' => 'Agenda'],];// $filariane = [$pole->getName(), 'Agenda'];} else {$filariane = [['pole' => 'Agenda'],];// $filariane = ['Agenda'];}}break;case str_contains($url[0], 'formation'):if (1 < \count($url)) {$formation = $formationRepository->find($url[1]);if (!$formation) {$formation = $formationRepository->findOneBy(['slug' => $url[1]]);}if (null !== $pole) {$urlPole = $this->generateUrl('page_front_slug', ['slug' => $pole->getUrlPole()->getSlug(),]);$filariane = [['pole' => $pole->getName(), 'url' => $urlPole],['titre' => 'Formations'],['titre' => $formation->getTitreFormation()],];// $filariane = [$pole->getName(), 'Formations', $formation->getTitreFormation()];} else {$urlPole = $this->generateUrl('page_front_slug', ['slug' => $formation->getPoleId()->getUrlPole()->getSlug(),]);$filariane = [['pole' => 'Formations', 'url' => $urlPole],['titre' => $formation->getTitreFormation()],];// $filariane = ['Formations', $formation->getTitreFormation()];}} else {if (null !== $pole) {$urlPole = $this->generateUrl('page_front_slug', ['slug' => $pole->getUrlPole()->getSlug(),]);$filariane = [['pole' => $pole->getName(), 'url' => $urlPole],['titre' => 'Formations'],];// $filariane = [$pole->getName(), 'Formations'];} else {$filariane = [['pole' => 'Formations'],];// $filariane = ['Formations'];}}break;case str_contains($url[0], 'offres-emploi') || str_contains($url[0], 'offre-emploi'):if (1 < \count($url)) {$offreEmploi = $offreEmploiRepository->find($url[1]);if (!$offreEmploi) {$offreEmploi = $offreEmploiRepository->findOneBy(['slug' => $url[1]]);}$urlPole = $this->generateUrl('app_offre_emploi_list');$filariane = [['pole' => 'Isaac', 'url' => '/page/presentation-isaac'],['titre' => 'Offres d\'emploi', 'url' => $urlPole],['titre' => $offreEmploi->getTitre()],];// $filariane = ['Isaac', 'Offres d\'emploi', $offreEmploi->getTitre()];} else {$filariane = [['pole' => 'Isaac', 'url' => '/page/presentation-isaac'],['titre' => 'Offres d\'emploi'],];// $filariane = ['Isaac', 'Offres d\'emploi'];}break;case str_contains($url[0], 'page'):$page = $pageRepository->find($url[1]);if (null === $page) {$page = $pageRepository->findOneBy(['slug' => $url[1]]);}if (null !== $page->getPoleId()) {$urlPole = $this->generateUrl('page_front_slug', ['slug' => $page->getPoleId()->getUrlPole()->getSlug(),]);$filariane = [['pole' => $page->getPoleId()->getName(), 'url' => $urlPole],['titre' => 'Présentation'],];} else {$filariane = [['pole' => $page->getTitre()],];// $filariane = [$page->getTitre()];}break;case str_contains($url[0], 'partenaire'):$filariane = [['pole' => 'Partenaires'],];break;case str_contains($url[0], 'contact'):$filariane = [['pole' => 'Contact'],];break;case str_contains($url[0], 'simuler'):$filariane = [['pole' => 'Nos tarifs'],];break;}return $this->render('front/includes/_breadcrumb.html.twig', ['filariane' => $filariane,]);}}