From 930ab84a58429f489c5456864d218291022cbdfd Mon Sep 17 00:00:00 2001 From: Tchama Date: Mon, 27 Jul 2020 19:43:43 +0200 Subject: [PATCH] sf4, fix section menu translations and add missing translations --- Resources/config/services/menu.yml | 1 + Resources/views/Menu/section.html.twig | 2 +- Routing/MenuBuilder/SectionMenuBuilder.php | 34 ++++++++++++++++++---- 3 files changed, 30 insertions(+), 7 deletions(-) diff --git a/Resources/config/services/menu.yml b/Resources/config/services/menu.yml index ac331bd5a..91b481b51 100644 --- a/Resources/config/services/menu.yml +++ b/Resources/config/services/menu.yml @@ -8,6 +8,7 @@ services: Chill\MainBundle\Routing\MenuBuilder\SectionMenuBuilder: arguments: $authorizationChecker: '@Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface' + $translator: '@Symfony\Component\Translation\TranslatorInterface' tags: - { name: 'chill.menu_builder' } diff --git a/Resources/views/Menu/section.html.twig b/Resources/views/Menu/section.html.twig index 8e53b0047..a2a437a7b 100644 --- a/Resources/views/Menu/section.html.twig +++ b/Resources/views/Menu/section.html.twig @@ -25,7 +25,7 @@
  • - {{ menu.label|trans }} + {{ menu.label }}
    {% apply spaceless %} {% if menu.extras.icons is defined %} diff --git a/Routing/MenuBuilder/SectionMenuBuilder.php b/Routing/MenuBuilder/SectionMenuBuilder.php index 3269e8549..b52a0502e 100644 --- a/Routing/MenuBuilder/SectionMenuBuilder.php +++ b/Routing/MenuBuilder/SectionMenuBuilder.php @@ -1,4 +1,5 @@ * @@ -15,34 +16,52 @@ * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ + namespace Chill\MainBundle\Routing\MenuBuilder; use Chill\MainBundle\Routing\LocalMenuBuilderInterface; use Knp\Menu\MenuItem; use Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface; use Chill\MainBundle\Security\Authorization\ChillExportVoter; +use Symfony\Component\Translation\TranslatorInterface; /** - * + * Class SectionMenuBuilder * + * @package Chill\MainBundle\Routing\MenuBuilder * @author Julien Fastré */ class SectionMenuBuilder implements LocalMenuBuilderInterface { /** - * * @var AuthorizationCheckerInterface */ protected $authorizationChecker; - public function __construct(AuthorizationCheckerInterface $authorizationChecker) + /** + * @var TranslatorInterface + */ + protected $translator; + + /** + * SectionMenuBuilder constructor. + * + * @param AuthorizationCheckerInterface $authorizationChecker + */ + public function __construct(AuthorizationCheckerInterface $authorizationChecker, TranslatorInterface $translator) { $this->authorizationChecker = $authorizationChecker; + $this->translator = $translator; } + /** + * @param $menuId + * @param MenuItem $menu + * @param array $parameters + */ public function buildMenu($menuId, MenuItem $menu, array $parameters) { - $menu->addChild('Homepage', [ + $menu->addChild($this->translator->trans('Homepage'), [ 'route' => 'chill_main_homepage' ]) ->setExtras([ @@ -51,7 +70,7 @@ class SectionMenuBuilder implements LocalMenuBuilderInterface ]); if ($this->authorizationChecker->isGranted(ChillExportVoter::EXPORT)) { - $menu->addChild('Export Menu', [ + $menu->addChild($this->translator->trans('Export Menu'), [ 'route' => 'chill_main_export_index' ]) ->setExtras([ @@ -60,7 +79,10 @@ class SectionMenuBuilder implements LocalMenuBuilderInterface ]); } } - + + /** + * @return array + */ public static function getMenuIds(): array { return [ 'section' ];