src/Controller/CityController.php line 31

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Api\BrcBackend\DTO\CityList;
  4. use App\Form\SearchType;
  5. use App\Service\Paginator\PaginatorBuilder;
  6. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  7. use Symfony\Component\HttpFoundation\Response;
  8. use Symfony\Component\Routing\Annotation\Route;
  9. /**
  10.  * @Route("/city")
  11.  */
  12. final class CityController extends AbstractController
  13. {
  14.     /**
  15.      * @Route("/list/{page}", name="city_list", defaults={"page"=null}, methods={"GET"})
  16.      *
  17.      * @param CityList $list
  18.      * @param PaginatorBuilder $paginator
  19.      *
  20.      * @return Response
  21.      */
  22.     public function list(CityList $listPaginatorBuilder $paginator): Response
  23.     {
  24.         return $this->render('city/list.html.twig', [
  25.             'cities' => $list->getCities(),
  26.             'pagination' => $paginator->build($list->getPage(), $list->getTotalPages()),
  27.             'currentPage' => $list->getPage(),
  28.             'form' => $this->createForm(SearchType::class)->createView(),
  29.         ]);
  30.     }
  31. }