src/Controller/HomeController.php line 120

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Repository\AgendaRepository;
  4. use App\Repository\MemberRepository;
  5. use App\Repository\DepartmentRepository;
  6. use App\Repository\ImagebackgroundRepository;
  7. use App\Repository\ProjectRepository;
  8. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  9. use Symfony\Component\HttpFoundation\Response;
  10. use App\Repository\ServiceRepository;
  11. use Knp\Component\Pager\PaginatorInterface;
  12. use Symfony\Component\HttpFoundation\Request;
  13. use Symfony\Component\Routing\Annotation\Route;
  14. class HomeController extends AbstractController
  15. {
  16.     /**
  17.      * @var ServiceRepository
  18.      */
  19.     private $s_repository;
  20.     /**
  21.      * @var AgendaRepository
  22.      */
  23.     private $a_repository;
  24.     /**
  25.      * @var MemberRepository
  26.      */
  27.     private $m_repository;
  28.     /**
  29.      * @var DepartmentRepository
  30.      */
  31.     private $d_repository;
  32.     /**
  33.      * @var ProjectRepository
  34.      */
  35.     private $p_repository;
  36.     /**
  37.      * @var ImagebackgroundRepository
  38.      */
  39.     private $i_repository;
  40.     public function __construct(ProjectRepository $p_repositoryServiceRepository $s_repositoryAgendaRepository $a_repositoryMemberRepository $m_repositoryDepartmentRepository $d_repositoryImagebackgroundRepository $i_repository)
  41.     {
  42.         $this->s_repository $s_repository;
  43.         $this->a_repository $a_repository;
  44.         $this->m_repository $m_repository;
  45.         $this->d_repository $d_repository;
  46.         $this->p_repository $p_repository;
  47.         $this->i_repository $i_repository;
  48.     }
  49.     public function index(PaginatorInterface $paginatorRequest $request): Response
  50.     {
  51.         $image $this->i_repository->find(2);
  52.         $services $paginator->paginate(
  53.             $this->s_repository->findServices(),
  54.             $request->query->getInt('page'1),
  55.             6
  56.         );
  57.         $agenda $paginator->paginate(
  58.             $this->a_repository->findAgenda(),
  59.             $request->query->getInt('page'1),
  60.             3
  61.         );
  62.         $projects $paginator->paginate(
  63.             $this->p_repository->findProjects(),
  64.             $request->query->getInt('page'1),
  65.             3
  66.         );
  67.         $members $this->m_repository->findAll();
  68.         return $this->render('pages/home.html.twig', [
  69.             'current_menu' => 'home',
  70.             'members' => $members,
  71.             'services' => $services,
  72.             'agenda' => $agenda,
  73.             'projects' => $projects,
  74.             'img' => $image
  75.         ]);
  76.     }
  77.     /**
  78.      * @Route("/home/single/{id}", name="hame.member")
  79.      * @return Response
  80.      */
  81.     public function member($id): Response
  82.     {
  83.         $image $this->i_repository->find(1);
  84.         $member $this->m_repository->find($id);
  85.         return $this->render('pages/member.html.twig', [
  86.             'member' => $member,
  87.             'img' => $image
  88.         ]);
  89.     }
  90.     /**
  91.      * @Route("/home/organigrame", name="hame.chart")
  92.      * @return Response
  93.      */
  94.     public function crsatchart(): Response
  95.     {
  96.         $image $this->i_repository->find(1);
  97.         return $this->render('pages/chart.html.twig', [
  98.             'img' => $image
  99.         ]);
  100.     }
  101.     /**
  102.      * @Route("/home/department/{id}", name="home.department")
  103.      * @return Response
  104.      */
  105.     public function department($id): Response
  106.     {
  107.         $image $this->i_repository->find(1);
  108.         $department $this->d_repository->find($id);
  109.         return $this->render('pages/department.html.twig', [
  110.             'department' => $department,
  111.             'img' => $image
  112.         ]);
  113.     }
  114. }