<?php
namespace App\Controller;
use App\Entity\Vehicules;
use App\Form\VehiculeType;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
class VehiculesController extends AbstractController
{
public function index(Request $request, EntityManagerInterface $entityManager): Response
{
$vehicules = $entityManager->getRepository(Vehicules::class)->findAll();
$search = $request->query->get('search', '');
// Rechercher les utilisateurs
$vehiculesSearch = $entityManager->getRepository(Vehicules::class)->createQueryBuilder('u')
->where('u.marque LIKE :search')
->setParameter('search', "%$search%")
->getQuery()
->getResult();
return $this->render('vehicules/index.html.twig', [
'controller_name' => 'VehiculesController',
'vehicules' => $vehicules,
'search' => $search
]);
}
public function create(Request $request, EntityManagerInterface $entityManager): Response
{
$vehicules = new Vehicules();
$form = $this->createForm(VehiculeType::class, $vehicules);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$entityManager->persist($vehicules);
$entityManager->flush();
return $this->redirectToRoute('vehicules_list');
}
return $this->render('vehicules/create.html.twig', [
'form' => $form->createView(),
'title' => 'Créer un véhicule'
]);
}
public function delete($id, EntityManagerInterface $entityManager): Response
{
$vehicules = $entityManager->getRepository(Vehicules::class)->findOneBy(['id' => $id]);
$entityManager->remove($vehicules);
$entityManager->flush();
return $this->redirectToRoute('vehicules_list');
}
public function show($id, EntityManagerInterface $entityManager): Response
{
$vehicule = $entityManager->getRepository(Vehicules::class)->findOneBy(['id' => $id]);
return $this->render('vehicules/show.html.twig', [
'vehicule' => $vehicule
]);
}
}