corrige bug

This commit is contained in:
ExostFlash 2023-11-27 14:05:00 +01:00
parent 755b6c2ccb
commit 7bea9c1fe6
4 changed files with 69 additions and 19 deletions

View file

@ -22,13 +22,19 @@ class HomeController extends AbstractController
private $restoRepository;
private $menuRepository;
private $role_user;
public function __construct(userRepository $userRepository, restoRepository $restoRepository, menuRepository $menuRepository, Security $security)
public function __construct(UserRepository $userRepository, RestoRepository $restoRepository, MenuRepository $menuRepository, Security $security)
{
$utilisateur = $security->getUser();
$email_user = $utilisateur->getUserIdentifier();
$this->userRepository = $userRepository;
$this->restoRepository = $restoRepository;
$this->menuRepository = $menuRepository;
$utilisateur = $security->getUser();
if ($utilisateur != null) {
$email_user = $utilisateur->getUserIdentifier();
$user = $userRepository->findOneBy(['email' => $email_user]);
if ($user) {
$role_user = $user->getGrade();
$id_resto = $user->getIdResto();
$id_user = $user->getId();
@ -36,9 +42,8 @@ class HomeController extends AbstractController
$this->role_user = $role_user;
$this->id_resto = $id_resto;
$this->id_user = $id_user;
$this->userRepository = $userRepository;
$this->restoRepository = $restoRepository;
$this->menuRepository = $menuRepository;
}
}
}
#[Route('/', name: 'app_home')]
@ -52,7 +57,7 @@ class HomeController extends AbstractController
]);
}
#[Route('/{idresto}', name: 'app_home_choice')]
#[Route('/choix/{idresto}', name: 'app_home_choice')]
public function choice($idresto): Response
{
$resto = $this->restoRepository->find($idresto);
@ -65,7 +70,7 @@ class HomeController extends AbstractController
]);
}
#[Route('/{idresto}/resa', name: 'app_home_resa')]
#[Route('/resa/{idresto}', name: 'app_home_resa')]
public function resa(): Response
{
return $this->render('home/resa.html.twig', [
@ -73,9 +78,12 @@ class HomeController extends AbstractController
]);
}
#[Route('/{idresto}/{idmenu}', name: 'app_home_ticket')]
#[Route('/ticket/{idresto}/{idmenu}', name: 'app_home_ticket')]
public function ticket($idresto, $idmenu, Request $request, EntityManagerInterface $entityManager): Response
{
$idresto = (int) $idresto;
$idmenu = (int) $idmenu;
$ticket = new Ticket();
$ticket->setIdResto($idresto);
$ticket->setIdUsers($this->id_user);
@ -91,4 +99,17 @@ class HomeController extends AbstractController
return $this->redirectToRoute('app_home', [], Response::HTTP_SEE_OTHER);
}
#[Route('/menu/{idresto}', name: 'app_home_menu')]
public function menu($idresto): Response
{
$resto = $this->restoRepository->find($idresto);
$menus = $this->menuRepository->findBy(['id_resto' => $idresto]);
return $this->render('home/menu.html.twig', [
'controller_name' => 'Home',
'resto' => $resto,
'menus' => $menus,
]);
}
}

View file

@ -1,12 +1,12 @@
{% extends 'base.html.twig' %}
{% block title %}Home{% endblock %}
{% block title %}Choix{% endblock %}
{% block body %}
<div class="center">
<h1>Commande/Resa</h1>
<h5>{{ resto.address }}</h5>
<h5>{{ resto.address }}, {{ resto.ville }}, {{ resto.pay }}</h5>
<p>Vous souhaitez reserver au restaurant : <code><a href="{{ path('app_home_resa', {'idresto': resto.id}) }}">C'est par ici !</a></code>

View file

@ -9,12 +9,18 @@
{% if not app.user %}
<p>compte utilisateur c'est <code><a href="/user">ici</a></code></p>
<h5>Menu par Resto :</h5>
<ul>
{% for resto in restos %}
<li><code><a href="{{ path('app_home_menu', {'idresto': resto.id}) }}">{{ resto.address }}, {{ resto.ville }}, {{ resto.pay }}</a></code></li>
{% endfor %}
</ul>
{% else %}
<p>Laisser un avis <code><a href="/avis">ici</a></code></p>
<h5>Réserver/Commander :</h5>
<ul>
{% for resto in restos %}
<li><code><a href="{{ path('app_home_choice', {'idresto': resto.id}) }}">{{ resto.address }}</a></code></li>
<li><code><a href="{{ path('app_home_choice', {'idresto': resto.id}) }}">{{ resto.address }}, {{ resto.ville }}, {{ resto.pay }}</a></code></li>
{% endfor %}
</ul>
{% endif %}

View file

@ -0,0 +1,23 @@
{% extends 'base.html.twig' %}
{% block title %}Menu{% endblock %}
{% block body %}
<div class="center">
<h1>Menu</h1>
<h5>{{ resto.address }}, {{ resto.ville }}, {{ resto.pay }}</h5>
{% for menu in menus %}
<article>
<h3>Menu {{ menu.id }}</h3>
<ul>
<li><code>Entrée :</code> {{ menu.entre }}</li>
<li><code>Plat :</code> {{ menu.plat }}</li>
<li><code>Dessert :</code> {{ menu.dessert }}</li>
</ul>
</article>
{% endfor %}
</div>
{% endblock %}