From 3cfd4fd69b9e1c4fa3a8cb7571974319b58e4144 Mon Sep 17 00:00:00 2001 From: Danny van Wijk Date: Thu, 14 Mar 2024 10:23:33 +0100 Subject: [PATCH] Add option to configure redirect admin list configurator class --- .../RedirectBundle/Controller/RedirectAdminListController.php | 4 ++-- .../RedirectBundle/DependencyInjection/Configuration.php | 2 ++ .../DependencyInjection/KunstmaanRedirectExtension.php | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Kunstmaan/RedirectBundle/Controller/RedirectAdminListController.php b/src/Kunstmaan/RedirectBundle/Controller/RedirectAdminListController.php index 4caa8d4df8..0393967a2b 100644 --- a/src/Kunstmaan/RedirectBundle/Controller/RedirectAdminListController.php +++ b/src/Kunstmaan/RedirectBundle/Controller/RedirectAdminListController.php @@ -5,7 +5,6 @@ use Kunstmaan\AdminBundle\Helper\DomainConfigurationInterface; use Kunstmaan\AdminListBundle\AdminList\Configurator\AdminListConfiguratorInterface; use Kunstmaan\AdminListBundle\Controller\AbstractAdminListController; -use Kunstmaan\RedirectBundle\AdminList\RedirectAdminListConfigurator; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Annotation\Route; @@ -28,7 +27,8 @@ public function __construct(DomainConfigurationInterface $domainConfiguration) public function getAdminListConfigurator() { if (!isset($this->configurator)) { - $this->configurator = new RedirectAdminListConfigurator($this->getEntityManager(), null, $this->domainConfiguration); + $configuratorClass = $this->getParameter('kunstmaan_redirect.adminlist.redirect_configurator.class'); + $this->configurator = new $configuratorClass($this->getEntityManager(), null, $this->domainConfiguration); } return $this->configurator; diff --git a/src/Kunstmaan/RedirectBundle/DependencyInjection/Configuration.php b/src/Kunstmaan/RedirectBundle/DependencyInjection/Configuration.php index 9dc70050dc..ecfecfbfcd 100644 --- a/src/Kunstmaan/RedirectBundle/DependencyInjection/Configuration.php +++ b/src/Kunstmaan/RedirectBundle/DependencyInjection/Configuration.php @@ -2,6 +2,7 @@ namespace Kunstmaan\RedirectBundle\DependencyInjection; +use Kunstmaan\RedirectBundle\AdminList\RedirectAdminListConfigurator; use Kunstmaan\RedirectBundle\Entity\Redirect; use Symfony\Component\Config\Definition\Builder\TreeBuilder; use Symfony\Component\Config\Definition\ConfigurationInterface; @@ -19,6 +20,7 @@ public function getConfigTreeBuilder() $rootNode ->children() ->scalarNode('redirect_entity')->defaultValue(Redirect::class)->end() + ->scalarNode('redirect_adminlist')->defaultValue(RedirectAdminListConfigurator::class)->end() ->booleanNode('enable_improved_router')->defaultFalse()->end() ->end() ; diff --git a/src/Kunstmaan/RedirectBundle/DependencyInjection/KunstmaanRedirectExtension.php b/src/Kunstmaan/RedirectBundle/DependencyInjection/KunstmaanRedirectExtension.php index 48c2d7a0b0..62b088df86 100644 --- a/src/Kunstmaan/RedirectBundle/DependencyInjection/KunstmaanRedirectExtension.php +++ b/src/Kunstmaan/RedirectBundle/DependencyInjection/KunstmaanRedirectExtension.php @@ -21,6 +21,7 @@ public function load(array $configs, ContainerBuilder $container) $loader->load('services.yml'); $container->setParameter('kunstmaan_redirect.redirect.class', $config['redirect_entity']); + $container->setParameter('kunstmaan_redirect.adminlist.redirect_configurator.class', $config['redirect_adminlist']); $enableImprovedRouter = $config['enable_improved_router'] ?? false; $container->setParameter('.kunstmaan_redirect.enable_improved_router', $enableImprovedRouter);