src/Controller/AccueilController.php line 82

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Entity\Demande;
  4. use App\Entity\Produit;
  5. use App\Form\DemandeType;
  6. use App\Form\DemandeursType;
  7. use App\Form\FromDemandeType;
  8. use App\Repository\DemandeRepository;
  9. use App\Repository\ProduitRepository;
  10. use Symfony\Component\HttpFoundation\Request;
  11. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  12. use Symfony\Component\HttpFoundation\Response;
  13. use Symfony\Component\Routing\Annotation\Route;
  14. class AccueilController extends AbstractController
  15. {
  16.     private $produit;
  17.     public function __construct(ProduitRepository $produitRepository)
  18.     {
  19.         $this->produit $produitRepository;
  20.     }
  21.      /**
  22.      * @Route("/", name="app_accueil")
  23.      */
  24.     public function accueil (Request $request){
  25.         $produits $this->produit->findBy(
  26.             ['valide'=>true],
  27.             ['createdAt' => 'DESC']
  28.         );
  29.         $rand_id = [];
  30.         $total count($this->produit->findAll());
  31.         for ($i 1$i <= 5$i++){
  32.             $rand_id[] = random_int(1,$total);
  33.         }
  34.         $randon_produits =$this->produit->findBy(['id'=>$rand_id]);
  35.         $produit_offres $this->produit->findBy(['id' => [10753]]);
  36.         return $this->render('accueil/index.html.twig', [
  37.            'produits' => $produits,
  38.            'radom'=>$randon_produits,
  39.            'produit_offres'=>$produit_offres
  40.            /* 'categories' => $categories*/
  41.         ]);
  42.     }
  43.     /**
  44.      * @Route("/nos-produits", name="app_accueil_nos_produit")
  45.      */
  46.     public function boutique (Request $request){
  47.         $produits $this->produit->findBy(
  48.             ['valide'=>true],
  49.             ['createdAt' => 'DESC']
  50.         );
  51.         return $this->render('accueil/categorie_produits.html.twig', [
  52.             'produits' => $produits,
  53.             /* 'categories' => $categories*/
  54.         ]);
  55.     }
  56.     /**
  57.      * @Route("/ucctm-dogbo", name="app_accueil_about_us")
  58.      */
  59.     public function aboutUs (){
  60.         return $this->render('accueil/about.html.twig');
  61.     }
  62.      /**
  63.      * @Route("/nous-contacter", name="app_accueil_contact")
  64.      */
  65.     public function contact (){
  66.         return $this->render('accueil/contact.html.twig');
  67.     }
  68.     /**
  69.      * @Route("/faire-une-demande", name="app_accueil_demandes")
  70.      */
  71.     public function demande (Request $requestDemandeRepository $demandeRepository){
  72.         $demande = new Demande();
  73.         $form $this->createForm(FromDemandeType::class, $demande);
  74.         $form->handleRequest($request);
  75.         if ($form->isSubmitted() && $form->isValid()) {
  76.             $demandeRepository->add($demande);
  77.             return $this->redirectToRoute('app_demande_index', [], Response::HTTP_SEE_OTHER);
  78.         }
  79.         return $this->renderForm('accueil/demande.html.twig', [
  80.             'demande' => $demande,
  81.             'form' => $form,
  82.         ]);
  83.     }
  84.     /**
  85.      * @Route("/produits/{slug}", name="app_accueil_show_produit")
  86.      */
  87.     public function showProduit (Produit $produit,ProduitRepository $produitRepository){
  88.         $rand_id = [];
  89.         $total count($produitRepository->findAll());
  90.         for ($i 1$i <= 4$i++){
  91.             $rand_id[] = random_int(1,$total);
  92.         }
  93.         $produits $produitRepository->findBy(['id'=>$rand_id]);
  94.         return $this->render('accueil/produit.html.twig', [
  95.             'produit' => $produit,
  96.             'produits' => $produits,
  97.         ]);
  98.     }
  99.     /**
  100.      * @Route("/politique-de-confidentialite", name="app_accueil_politique")
  101.      */
  102.     public function politique(){
  103.         return $this->render('base.html.twig');
  104.     }
  105.     /**
  106.      * @Route("/cgu", name="app_accueil_cgu")
  107.      */
  108.     public function cgu(){
  109.         return $this->render('base.html.twig');
  110.     }
  111. }