From 720db6c791ccc8c646bc97c212354b8bb22785ec Mon Sep 17 00:00:00 2001 From: Toni Rudolf Date: Tue, 7 Mar 2017 15:10:27 +0100 Subject: [PATCH 1/3] twig2 compatibility --- DependencyInjection/TranslationExtension.php | 12 ++++++++++++ Resources/config/extractors.yml | 4 ++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/DependencyInjection/TranslationExtension.php b/DependencyInjection/TranslationExtension.php index da1a6514..f59c1710 100644 --- a/DependencyInjection/TranslationExtension.php +++ b/DependencyInjection/TranslationExtension.php @@ -20,6 +20,10 @@ use Symfony\Component\DependencyInjection\Loader; use Symfony\Component\HttpKernel\Kernel; use Translation\Bundle\Model\Configuration as ConfigurationModel; +use Translation\Extractor\Visitor\Twig\TranslationBlock; +use Translation\Extractor\Visitor\Twig\TranslationFilter; +use Translation\Extractor\Visitor\Twig\Twig2TranslationBlock; +use Translation\Extractor\Visitor\Twig\Twig2TranslationFilter; /** * This is the class that loads and manages your bundle configuration. @@ -44,6 +48,14 @@ public function load(array $configs, ContainerBuilder $container) $container->getDefinition('php_translation.extractor.php.visitor.FormTypeChoices') ->addMethodCall('setSymfonyMajorVersion', [Kernel::MAJOR_VERSION]); + if (\Twig_Environment::MAJOR_VERSION === 1) { + $container->setParameter('php_translation.extractor.twig.visitor.translation_block.class', TranslationBlock::class); + $container->setParameter('php_translation.extractor.twig.visitor.translation_filter.class', TranslationFilter::class); + } else { + $container->setParameter('php_translation.extractor.twig.visitor.translation_block.class', Twig2TranslationBlock::class); + $container->setParameter('php_translation.extractor.twig.visitor.translation_filter.class', Twig2TranslationFilter::class); + } + $container->setParameter('php_translation.locales', $config['locales']); $container->setParameter('php_translation.default_locale', isset($config['default_locale']) ? $config['default_locale'] : $container->getParameter('kernel.default_locale')); $this->handleConfigNode($container, $config); diff --git a/Resources/config/extractors.yml b/Resources/config/extractors.yml index 71774cb1..b7afd24b 100644 --- a/Resources/config/extractors.yml +++ b/Resources/config/extractors.yml @@ -53,11 +53,11 @@ services: # Twig Visitors: php_translation.extractor.twig.visitor.translation_block: - class: Translation\Extractor\Visitor\Twig\TranslationBlock + class: %php_translation.extractor.twig.visitor.translation_block.class% tags: - { name: 'php_translation.visitor', type: 'twig' } php_translation.extractor.twig.visitor.translation_filter: - class: Translation\Extractor\Visitor\Twig\TranslationFilter + class: %php_translation.extractor.twig.visitor.translation_filter.class% tags: - { name: 'php_translation.visitor', type: 'twig' } From cdda8841c376c4cc99446239d75686c7b16f7d81 Mon Sep 17 00:00:00 2001 From: Toni Rudolf Date: Tue, 7 Mar 2017 15:27:29 +0100 Subject: [PATCH 2/3] added quotes --- Resources/config/extractors.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Resources/config/extractors.yml b/Resources/config/extractors.yml index b7afd24b..ecc59c2f 100644 --- a/Resources/config/extractors.yml +++ b/Resources/config/extractors.yml @@ -53,11 +53,11 @@ services: # Twig Visitors: php_translation.extractor.twig.visitor.translation_block: - class: %php_translation.extractor.twig.visitor.translation_block.class% + class: '%php_translation.extractor.twig.visitor.translation_block.class%' tags: - { name: 'php_translation.visitor', type: 'twig' } php_translation.extractor.twig.visitor.translation_filter: - class: %php_translation.extractor.twig.visitor.translation_filter.class% + class: '%php_translation.extractor.twig.visitor.translation_filter.class%' tags: - { name: 'php_translation.visitor', type: 'twig' } From 1d6fd06a45d465262407577cca0eb5d24a2894d7 Mon Sep 17 00:00:00 2001 From: Toni Rudolf Date: Tue, 7 Mar 2017 15:58:14 +0100 Subject: [PATCH 3/3] use VERSION instead of MAJOR_VERSION which was introduced later --- DependencyInjection/TranslationExtension.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DependencyInjection/TranslationExtension.php b/DependencyInjection/TranslationExtension.php index f59c1710..a9cae860 100644 --- a/DependencyInjection/TranslationExtension.php +++ b/DependencyInjection/TranslationExtension.php @@ -48,7 +48,7 @@ public function load(array $configs, ContainerBuilder $container) $container->getDefinition('php_translation.extractor.php.visitor.FormTypeChoices') ->addMethodCall('setSymfonyMajorVersion', [Kernel::MAJOR_VERSION]); - if (\Twig_Environment::MAJOR_VERSION === 1) { + if (version_compare(\Twig_Environment::VERSION, 2) === -1) { $container->setParameter('php_translation.extractor.twig.visitor.translation_block.class', TranslationBlock::class); $container->setParameter('php_translation.extractor.twig.visitor.translation_filter.class', TranslationFilter::class); } else {