FEATURE [menu][counters] show counter icon for person resources and residential address if there are any

This commit is contained in:
2023-02-24 13:54:44 +01:00
parent 6254303392
commit 27f13e0dd1
2 changed files with 14 additions and 1 deletions

View File

@@ -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'), [