<?php
namespace App\Controller;
use App\Repository\Posts\CategoriepostsRepository;
use App\Repository\Pages\PagesRepository;
use Knp\Component\Pager\PaginatorInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/sejourner")
*/
class SejournerController extends AbstractController
{
/**
* @Route("/ou-dormir", name="sejourner.oudormir")
* @param Request $request
* @param CategoriepostsRepository $categoriepostsRepository
* @param PaginatorInterface $paginator
* @param ContainerInterface $container
* @return Response
*/
public function oudormir(
Request $request,
CategoriepostsRepository $categoriepostsRepository,
PaginatorInterface $paginator,
ContainerInterface $container
): Response
{
$twig = $container->get('twig');
$globals = $twig->getGlobals();
$menuId = $globals['menuOuDormir'];
$categories = $paginator->paginate(
$categoriepostsRepository->findBy(['menu' => $menuId, 'online' => true], ['ordre' => 'ASC']), /* query NOT result */
$request->query->getInt('page', 1)/*page number*/,
$request->query->getInt('limit', 12)/*limit per page*/
);
return $this->render('pages/sejourner/index.html.twig', [
'title' => 'Où dormir',
'categories' => $categories,
'menu' => "Séjourner",
'current_page' => 'sejourner'
]);
}
/**
* @Route("/ou-manger", name="sejourner.oumanger")
* @param Request $request
* @param CategoriepostsRepository $categoriepostsRepository
* @param PaginatorInterface $paginator
* @param ContainerInterface $container
* @return Response
*/
public function oumanger(
Request $request,
CategoriepostsRepository $categoriepostsRepository,
PaginatorInterface $paginator,
ContainerInterface $container
): Response
{
$twig = $container->get('twig');
$globals = $twig->getGlobals();
$menuId = $globals['menuOuManger'];
$categories = $paginator->paginate(
$categoriepostsRepository->findBy(['menu' => $menuId, 'online' => true], ['ordre' => 'ASC']), /* query NOT result */
$request->query->getInt('page', 1)/*page number*/,
$request->query->getInt('limit', 12)/*limit per page*/
);
return $this->render('pages/sejourner/index.html.twig', [
'title' => 'Où manger',
'categories' => $categories,
'menu' => "Séjourner",
'current_page' => 'sejourner'
]);
}
/**
* @Route("/ou-aller", name="sejourner.oualler")
* @param Request $request
* @param CategoriepostsRepository $categoriepostsRepository
* @param PaginatorInterface $paginator
* @param ContainerInterface $container
* @return Response
*/
public function oualler(
Request $request,
CategoriepostsRepository $categoriepostsRepository,
PaginatorInterface $paginator,
ContainerInterface $container
): Response
{
$twig = $container->get('twig');
$globals = $twig->getGlobals();
$menuId = $globals['menuOuAller'];
$categories = $paginator->paginate(
$categoriepostsRepository->findBy(['menu' => $menuId, 'online' => true], ['ordre' => 'ASC']), /* query NOT result */
$request->query->getInt('page', 1)/*page number*/,
$request->query->getInt('limit', 12)/*limit per page*/
);
return $this->render('pages/sejourner/index.html.twig', [
'title' => 'Où aller',
'categories' => $categories,
'menu' => "Séjourner",
'current_page' => 'sejourner'
]);
}
/**
* @Route("/location", name="sejourner.location")
* @param Request $request
* @param CategoriepostsRepository $categoriepostsRepository
* @param PaginatorInterface $paginator
* @param ContainerInterface $container
* @return Response
*/
public function location(
Request $request,
CategoriepostsRepository $categoriepostsRepository,
PaginatorInterface $paginator,
ContainerInterface $container
): Response
{
$twig = $container->get('twig');
$globals = $twig->getGlobals();
$menuId = $globals['menuLocation'];
$categories = $paginator->paginate(
$categoriepostsRepository->findBy(['menu' => $menuId, 'online' => true], ['ordre' => 'ASC']), /* query NOT result */
$request->query->getInt('page', 1)/*page number*/,
$request->query->getInt('limit', 12)/*limit per page*/
);
return $this->render('pages/sejourner/index.html.twig', [
'title' => 'Location',
'categories' => $categories,
'menu' => "Séjourner",
'current_page' => 'sejourner'
]);
}
/**
* @Route("/infos-pratiques", name="sejourner.infopratique")
* @param Request $request
* @param PagesRepository $pagesRepository
* @param PaginatorInterface $paginator
* @param ContainerInterface $container
* @return Response
*/
public function infopratique(
Request $request,
PagesRepository $pagesRepository,
PaginatorInterface $paginator,
ContainerInterface $container
): Response
{
$twig = $container->get('twig');
$globals = $twig->getGlobals();
$menuId = $globals['menuInfoPratique'];
$categories = $paginator->paginate(
$pagesRepository->findBy(['online' => true, 'menuId' => $menuId], ['ordre' => 'ASC']), /* query NOT result */
$request->query->getInt('page', 1)/*page number*/,
$request->query->getInt('limit', 12)/*limit per page*/
);
return $this->render('pages/sejourner/index.html.twig', [
'title' => 'Infos pratiques',
'categories' => $categories,
'menu' => "Séjourner",
'current_page' => 'sejourner'
]);
}
}