src/Controller/HomeController.php line 29

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Entity\Slide;
  4. use App\Entity\Agenda;
  5. use App\Service\FileUploader;
  6. use App\Repository\MenuRepository;
  7. use App\Repository\SlideRepository;
  8. use App\Repository\AgendaRepository;
  9. use App\Repository\AnnoncesRepository;
  10. use App\Repository\ActualitesRepository;
  11. use Doctrine\ORM\EntityManagerInterface;
  12. use Symfony\Component\HttpFoundation\Request;
  13. use Symfony\Component\HttpFoundation\Response;
  14. use Symfony\Component\Routing\Annotation\Route;
  15. use Symfony\Component\Validator\Validator\ValidatorInterface;
  16. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  17. class HomeController extends AbstractController
  18. {
  19.     private $em;
  20.     public function __construct(EntityManagerInterface $em)
  21.     {
  22.         $this->em $em;
  23.     }
  24.     
  25.     #[Route('/'name'app_home')]
  26.     public function index(MenuRepository $menuRepository,AgendaRepository $agendaRepositoryActualitesRepository $actualitesRepositoryAnnoncesRepository $annoncesRepositorySlideRepository $slideRepository): Response
  27.     {$imagelink=null;
  28.         
  29.         return $this->render('home/index.html.twig', [
  30.             'menus'=> $menuRepository->findBy(array(),
  31.             array('position'=>'ASC')),
  32.             'agenda'=>$agendaRepository->findBy(array(),
  33.                                                 array('id'=>'DESC'),
  34.                                                 2),
  35.             'actualites'=>$actualitesRepository->findBy(array(),
  36.                                                         array('id'=>'DESC'),
  37.                                                         3),
  38.             'annonces'=>$annoncesRepository->findBy(array(),
  39.                                                         array('id'=>'ASC'),
  40.                                                         3),
  41.             'slids'=>$slideRepository->findAll(),
  42.             'imagelink'=>$imagelink
  43.         ]);
  44.     } 
  45.     
  46.    /*  #[Route('/slide', name: 'app_slide')]
  47.     public function home_slide(FileUploader $fileUploader, ValidatorInterface $validator, Request $request,SlideRepository $slideRepository,MenuRepository $menuRepository): Response
  48.     {
  49.         $submit = $request->request->get('submit');
  50.         $errors = null;
  51.         if ($submit) {
  52.             $slide = new Slide();
  53.             $slide->setIntitule($request->request->get('libelle'));
  54.             if ($request->files->get('file')) {
  55.                 $FileName = $fileUploader->upload($request->files->get('file'));
  56.                 $slide->setImage($FileName);
  57.             }
  58.             $errors = $validator->validate($slide);
  59.             if (count($errors) > 0) {
  60.                 $errorsString = (string) $errors;
  61.             } else {
  62.                 $this->em->persist($slide);
  63.                 $this->em->flush();
  64.                 return $this->redirectToRoute('app_slide', [], Response::HTTP_SEE_OTHER);
  65.             }
  66.         }
  67.         return $this->render('slide/index.html.twig', [
  68.             'slids'=> $slideRepository->findAll(),
  69.             'menus' => $menuRepository->findAll(),
  70.             'errors' => $errors,
  71.         ]);
  72.     } */
  73.     
  74.     
  75.   /*   #[Route('slide/update/{id}/', name: 'app_slide_', methods: ['GET', 'POST'])]
  76.     public function edit(FileUploader $fileUploader, ValidatorInterface $validator, Request $request, Slide $slide): Response
  77.     {
  78.         $submit = $request->request->get('submit');
  79.         /*  $oldphoto = $sousmenu2->getImage();
  80.         $oldvideo = $sousmenu2->getVideo(); /
  81.         $errors = null;
  82.         if ($submit) {
  83.             $slide->setIntitule($request->request->get('libelle'));
  84.             // $reportage->setPath($request->request->get('path'));
  85.            
  86.             $errors = $validator->validate($slide);
  87.             $tab  = null;
  88.             if ($request->files->get('file')) {
  89.                 // $FileName = $fileUploader->upload($request->files->get('file'));
  90.                 foreach ($request->files->get('file') as  $value) {
  91.                     $FileName = $fileUploader->upload($value);
  92.                     $tab[] = $FileName;
  93.                 }
  94.                 $slide->setImage($tab);
  95.             } /* else {
  96.                 if ($oldphoto) {
  97.                     foreach ($oldphoto as  $value) {
  98.                     $tab[] = $value;
  99.                 }
  100.                  $sousmenu2->setImage($tab);
  101.                 }
  102.             } */
  103.             /* else {
  104.                 if ($oldvideo) {
  105.                     foreach ($oldvideo as  $value) {
  106.                     $tabvid[] = $value;
  107.                 }
  108.                  $sousmenu2->setVideo($tabvid);
  109.                 }
  110.             } /
  111.             if (count($errors) > 0) {  
  112.                 $errorsString = (string) $errors;
  113.             }else {
  114.                 $this->em->persist($slide);
  115.                 $this->em->flush();
  116.                 return $this->redirectToRoute('app_slide_index', [], Response::HTTP_SEE_OTHER);
  117.             }
  118.         }
  119.         return $this->renderForm('slide/update.html.twig', [
  120.            
  121.             'idSlide'=> $slide->getId(),
  122.             'slide' => $slide,
  123.             'errors' => $errors,
  124.         ]);
  125.     } */
  126.   /*   #[Route('slide/supprimer/{id}', name: 'app_slide_delete', methods: ['POST'])]
  127.     public function delete(Request $request, Slide $slide, MenuRepository $menuRepository): Response
  128.     {   
  129.         //dd( $menu);
  130.         if ($this->isCsrfTokenValid('delete'.$slide->getId(), $request->request->get('_token'))) {
  131.             $this->em->remove($slide);
  132.             $this->em->flush();
  133.         }
  134.         return $this->redirectToRoute('app_slide_index', [], Response::HTTP_SEE_OTHER);
  135.     }*/