src/Controller/EpypController.php line 19

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Entity\Image;
  4. use App\Entity\TextEs;
  5. use App\Entity\TextFr;
  6. use App\Entity\TextPt;
  7. use Doctrine\ORM\EntityManagerInterface;
  8. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  9. use Symfony\Component\HttpFoundation\Response;
  10. use Symfony\Component\HttpFoundation\Request;
  11. use Symfony\Component\Routing\Annotation\Route;
  12. #[Route('/{_locale<%app.supported_locales%>}/epyp'name'app-epyp-')]
  13. class EpypController extends AbstractController
  14. {
  15.     #[Route('/'name'index')]
  16.     public function index(Request $requestEntityManagerInterface $entityManager): Response
  17.     {
  18.         $local $request->getLocale(); // get la locale
  19.         $datasImages $entityManager->getRepository(Image::class)->findBy(['page' => 'epyp']);
  20.         $images = [];
  21.         foreach ($datasImages as $img) {
  22.             $images[$img->getName()] = $img;
  23.         }
  24.         switch ($local) {
  25.             case "fr":
  26.                 $datas $entityManager->getRepository(TextFr::class)->findBy(['page' => 'epyp']);
  27.                 break;
  28.             case "es":
  29.                 $datas $entityManager->getRepository(TextEs::class)->findBy(['page' => 'epyp']);
  30.                 break;
  31.             case "pt":
  32.                 $datas $entityManager->getRepository(TextPt::class)->findBy(['page' => 'epyp']);
  33.                 break;
  34.             default:
  35.                 $datas null;
  36.                 break;
  37.         }
  38.         $texts = [];
  39.         foreach ($datas as $text) {
  40.             $texts[$text->getName()] = $text;
  41.         }
  42.         return $this->render('epyp/' $local '/index.html.twig',[
  43.             'texts' => $texts,
  44.             'images' => $images
  45.         ]);
  46.     }
  47. }