From 1a04d903fc295302f0df5e5688b8cf6c2e510aaa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Sat, 29 Jan 2022 03:08:34 +0100 Subject: [PATCH] fixes for page 'mes parcours' --- .../UserAccompanyingPeriodController.php | 17 ++++++++++++----- .../Menu/UserMenuBuilder.php | 11 +---------- .../AccompanyingPeriodRepository.php | 5 +++++ .../user_periods_list.html.twig | 19 ++++++++++++------- 4 files changed, 30 insertions(+), 22 deletions(-) diff --git a/src/Bundle/ChillPersonBundle/Controller/UserAccompanyingPeriodController.php b/src/Bundle/ChillPersonBundle/Controller/UserAccompanyingPeriodController.php index 9c24e127f..ddaf1b856 100644 --- a/src/Bundle/ChillPersonBundle/Controller/UserAccompanyingPeriodController.php +++ b/src/Bundle/ChillPersonBundle/Controller/UserAccompanyingPeriodController.php @@ -12,6 +12,7 @@ declare(strict_types=1); namespace Chill\PersonBundle\Controller; +use Chill\MainBundle\Pagination\PaginatorFactory; use Chill\PersonBundle\Repository\AccompanyingPeriodRepository; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; @@ -22,9 +23,12 @@ class UserAccompanyingPeriodController extends AbstractController private AccompanyingPeriodRepository $accompanyingPeriodRepository; - public function __construct(AccompanyingPeriodRepository $accompanyingPeriodRepository) + private PaginatorFactory $paginatorFactory; + + public function __construct(AccompanyingPeriodRepository $accompanyingPeriodRepository, PaginatorFactory $paginatorFactory) { $this->accompanyingPeriodRepository = $accompanyingPeriodRepository; + $this->paginatorFactory = $paginatorFactory; } /** @@ -32,12 +36,15 @@ class UserAccompanyingPeriodController extends AbstractController */ public function listAction(Request $request) { - $accompanyingPeriods = []; - $accompanyingPeriods = $this->accompanyingPeriodRepository->findBy(['user' => $this->getUser()]); + $total = $this->accompanyingPeriodRepository->countBy(['user' => $this->getUser()]); + $pagination = $this->paginatorFactory->create($total); + $accompanyingPeriods = $this->accompanyingPeriodRepository->findBy(['user' => $this->getUser()], + ['openingDate' => 'DESC'], $pagination->getItemsPerPage(), $pagination->getCurrentPageFirstItemNumber()); return $this->render('@ChillPerson/AccompanyingPeriod/user_periods_list.html.twig', [ - 'accompanyingPeriods' => $accompanyingPeriods + 'accompanyingPeriods' => $accompanyingPeriods, + 'pagination' => $pagination, ]); } -} \ No newline at end of file +} diff --git a/src/Bundle/ChillPersonBundle/Menu/UserMenuBuilder.php b/src/Bundle/ChillPersonBundle/Menu/UserMenuBuilder.php index 1b86135b8..3e56b423c 100644 --- a/src/Bundle/ChillPersonBundle/Menu/UserMenuBuilder.php +++ b/src/Bundle/ChillPersonBundle/Menu/UserMenuBuilder.php @@ -25,15 +25,6 @@ class UserMenuBuilder implements LocalMenuBuilderInterface */ public $authorizationChecker; - /** - * @var CountNotificationTask - */ - public $counter; - - /** - * @var TokenStorageInterface - */ - public $tokenStorage; /** * @var TranslatorInterface @@ -63,4 +54,4 @@ class UserMenuBuilder implements LocalMenuBuilderInterface { return ['user']; } -} \ No newline at end of file +} diff --git a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodRepository.php b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodRepository.php index b21431554..9554f2a3b 100644 --- a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodRepository.php @@ -49,6 +49,11 @@ final class AccompanyingPeriodRepository implements ObjectRepository return $this->repository->findBy($criteria, $orderBy, $limit, $offset); } + public function countBy(array $criteria): int + { + return $this->repository->count($criteria); + } + public function findOneBy(array $criteria): ?AccompanyingPeriod { return $this->findOneBy($criteria); diff --git a/src/Bundle/ChillPersonBundle/Resources/views/AccompanyingPeriod/user_periods_list.html.twig b/src/Bundle/ChillPersonBundle/Resources/views/AccompanyingPeriod/user_periods_list.html.twig index 12faf739a..d30997bac 100644 --- a/src/Bundle/ChillPersonBundle/Resources/views/AccompanyingPeriod/user_periods_list.html.twig +++ b/src/Bundle/ChillPersonBundle/Resources/views/AccompanyingPeriod/user_periods_list.html.twig @@ -2,7 +2,7 @@ {% set activeRouteKey = 'chill_person_accompanying_period_user_list' %} -{% block title %}{{ 'Accompanying period list'|trans }}{% endblock title %} +{% block title %}{{ 'My accompanying periods'|trans }}{% endblock title %} {% macro recordAction(period) %}
  • @@ -14,12 +14,17 @@ {% block content %} -

    {{ 'Accompanying period list'|trans }}

    +
    +

    {{ 'My accompanying periods'|trans }}

    + +
    + {% for period in accompanyingPeriods %} + {% include '@ChillPerson/AccompanyingPeriod/_list_item.html.twig' with {'period': period, 'recordAction': _self.recordAction(period)} %} + {% endfor %} +
    + + {{ chill_pagination(pagination) }} -
    - {% for period in accompanyingPeriods %} - {% include '@ChillPerson/AccompanyingPeriod/_list_item.html.twig' with {'period': period, 'recordAction': _self.recordAction(period)} %} - {% endfor %}
    -{% endblock %} \ No newline at end of file +{% endblock %}