From 3fc80d10efa14f57636d17e82ac431b9bd2f00ca Mon Sep 17 00:00:00 2001 From: Maxime Steinhausser Date: Sat, 6 May 2017 10:33:49 +0200 Subject: [PATCH] [Workflow] Move twig extension registration to twig bundle --- .../Bundle/FrameworkBundle/Resources/config/workflow.xml | 5 ----- .../DependencyInjection/Compiler/ExtensionPass.php | 8 ++++++++ src/Symfony/Bundle/TwigBundle/Resources/config/twig.xml | 4 ++++ 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/Symfony/Bundle/FrameworkBundle/Resources/config/workflow.xml b/src/Symfony/Bundle/FrameworkBundle/Resources/config/workflow.xml index 76592087a226..320387039392 100644 --- a/src/Symfony/Bundle/FrameworkBundle/Resources/config/workflow.xml +++ b/src/Symfony/Bundle/FrameworkBundle/Resources/config/workflow.xml @@ -22,10 +22,5 @@ - - - - - diff --git a/src/Symfony/Bundle/TwigBundle/DependencyInjection/Compiler/ExtensionPass.php b/src/Symfony/Bundle/TwigBundle/DependencyInjection/Compiler/ExtensionPass.php index 1491b04ac054..00d140369d2e 100644 --- a/src/Symfony/Bundle/TwigBundle/DependencyInjection/Compiler/ExtensionPass.php +++ b/src/Symfony/Bundle/TwigBundle/DependencyInjection/Compiler/ExtensionPass.php @@ -18,6 +18,7 @@ use Symfony\Component\DependencyInjection\Reference; use Symfony\Component\ExpressionLanguage\ExpressionLanguage; use Symfony\Component\Stopwatch\Stopwatch; +use Symfony\Component\Workflow\Workflow; use Symfony\Component\Yaml\Parser as YamlParser; /** @@ -115,6 +116,13 @@ public function process(ContainerBuilder $container) if (class_exists(ExpressionLanguage::class)) { $container->getDefinition('twig.extension.expression')->addTag('twig.extension'); } + + $container->addResource(new ClassExistenceResource(Workflow::class)); + if (!class_exists(Workflow::class) || !$container->has('workflow.registry')) { + $container->removeDefinition('workflow.twig_extension'); + } else { + $container->getDefinition('workflow.twig_extension')->addTag('twig.extension'); + } } private function getComposerRootDir($rootDir) diff --git a/src/Symfony/Bundle/TwigBundle/Resources/config/twig.xml b/src/Symfony/Bundle/TwigBundle/Resources/config/twig.xml index 800fc08367fd..8eb702c99ee4 100644 --- a/src/Symfony/Bundle/TwigBundle/Resources/config/twig.xml +++ b/src/Symfony/Bundle/TwigBundle/Resources/config/twig.xml @@ -106,6 +106,10 @@ + + + +