diff --git a/src/Bundle/ChillPersonBundle/Menu/PersonMenuBuilder.php b/src/Bundle/ChillPersonBundle/Menu/PersonMenuBuilder.php index 9185e372f..bf11a6c01 100644 --- a/src/Bundle/ChillPersonBundle/Menu/PersonMenuBuilder.php +++ b/src/Bundle/ChillPersonBundle/Menu/PersonMenuBuilder.php @@ -12,11 +12,13 @@ declare(strict_types=1); namespace Chill\PersonBundle\Menu; use Chill\MainBundle\Routing\LocalMenuBuilderInterface; +use Chill\PersonBundle\Repository\ResidentialAddressRepository; use Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter; use Knp\Menu\MenuItem; use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface; use Symfony\Component\Security\Core\Security; use Symfony\Contracts\Translation\TranslatorInterface; +use function count; /** * Add menu entrie to person menu. @@ -35,16 +37,20 @@ class PersonMenuBuilder implements LocalMenuBuilderInterface protected TranslatorInterface $translator; + private ResidentialAddressRepository $residentialAddressRepo; + private Security $security; public function __construct( ParameterBagInterface $parameterBag, Security $security, - TranslatorInterface $translator + TranslatorInterface $translator, + ResidentialAddressRepository $residentialAddressRepo ) { $this->showAccompanyingPeriod = $parameterBag->get('chill_person.accompanying_period'); $this->security = $security; $this->translator = $translator; + $this->residentialAddressRepo = $residentialAddressRepo; } public function buildMenu($menuId, MenuItem $menu, array $parameters) @@ -67,6 +73,8 @@ class PersonMenuBuilder implements LocalMenuBuilderInterface ]) ->setExtras([ 'order' => 60, + 'counter' => count($this->residentialAddressRepo->findBy(['person' => $parameters['person']])) > 0 ? + count($this->residentialAddressRepo->findBy(['person' => $parameters['person']])) : null, ]); $menu->addChild($this->translator->trans('person_resources_menu'), [ @@ -77,6 +85,7 @@ class PersonMenuBuilder implements LocalMenuBuilderInterface ]) ->setExtras([ 'order' => 70, + 'counter' => count($parameters['person']->getResources()) > 0 ? count($parameters['person']->getResources()) : null, ]); $menu->addChild($this->translator->trans('household.person history'), [ diff --git a/src/Bundle/ChillPersonBundle/Resources/views/menu.html.twig b/src/Bundle/ChillPersonBundle/Resources/views/menu.html.twig index 23dda065e..cf60e31b7 100644 --- a/src/Bundle/ChillPersonBundle/Resources/views/menu.html.twig +++ b/src/Bundle/ChillPersonBundle/Resources/views/menu.html.twig @@ -17,8 +17,12 @@