<?php
namespace App\Controller;
use App\Entity\Boutiques;
use App\Repository\BoutiquesRepository;
use Knp\Component\Pager\PaginatorInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
class BoutiquesController extends AbstractController
{
private BoutiquesRepository $boutiqueRepository ;
public function __construct(BoutiquesRepository $boutiqueRepository)
{
$this->boutiqueRepository = $boutiqueRepository;
}
#[Route('/boutiques', name: 'app_boutiques')]
public function index(Request $request, PaginatorInterface $paginator): Response
{
$donnees=[];
$donnees = $this->boutiqueRepository->findBy([], ["nom"=>"asc",], 1000);
$boutiques= null ;
if($request->isMethod("POST")){
$searchText= $_POST["searchText"] ?? null ;
$donnees = $this->boutiqueRepository->findByNomLikeField($searchText);
}
if(count($donnees) > 0){
$boutiques = $paginator->paginate(
$donnees,
$request->query->getInt('page', 1),15);
}
return $this->render('boutiques/index.html.twig', [
'boutiques' => $boutiques,
]);
}
#[Route('detail-boutique/{id}', name: 'app_boutiques_detail')]
public function detail( Boutiques $boutiques):Response
{
return $this->render('boutiques/detail.html.twig', [
'boutique' => $boutiques
]);
}
}