<?php
namespace App\Controller;
use App\Entity\Agent;
use App\Entity\CompteRendu;
use App\Entity\Intervention;
use App\Entity\User;
use Knp\Component\Pager\PaginatorInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\Intl\Intl;
class HomeController extends AbstractController
{
/**
* @Route("/list_clients", name="app_list_clients")
*/
public function index(Request $request, PaginatorInterface $paginator): Response
{
// Méthode findAll qui permet de récupérer tous les utilisateurs
// TODO Utiliser findByRole pour récupérer que les clients
$donnees = $this->getDoctrine()->getRepository(User::class)->findAll();
$clients = $paginator->paginate(
$donnees, // On passe les données des clients
$request->query->getInt('page', 1), // Numéro de la page en cours, 1 par défaut
6
);
return $this->render('home/index.html.twig', [
'controller_name' => 'HomeController', 'list_users' => $clients, 'total_user' => $donnees
]);
}
/**
* @Route("/demo", name="demo")
*/
public function demo(): Response
{
return $this->render('demo/date.html.twig', [
'controller_name' => 'HomeController',
]);
}
/**
* @Route("/", name="app_dashboard")
* @throws \Exception
*/
public function dashboard(Request $request): Response
{
$list_agents = $this->getDoctrine()->getRepository(Agent::class)->findAll();
$interventions_list = $this->getDoctrine()->getRepository(Intervention::class)->getByFilter(new \DateTime("now"),"", "all");
if($request->query->get("agent_id") || $request->query->get("time")) {
$interventions_list = $this->getDoctrine()->getRepository(Intervention::class)->getByFilter(new \DateTime("now"), $request->query->get("agent_id"), $request->query->get("time"));
}
return $this->render('dashboard/index2.html.twig', [
'controller_name' => 'HomeController', 'inter_list' => $interventions_list, 'list_agent' => $list_agents
]);
}
}