3 namespace Wallabag\UserBundle\DependencyInjection
;
5 use Symfony\Component\Config\FileLocator
;
6 use Symfony\Component\DependencyInjection\ContainerBuilder
;
7 use Symfony\Component\DependencyInjection\Loader
;
8 use Symfony\Component\HttpKernel\DependencyInjection\Extension
;
9 use Symfony\Component\DependencyInjection\Extension\PrependExtensionInterface
;
11 class WallabagUserExtension
extends Extension
implements PrependExtensionInterface
13 public function prepend(ContainerBuilder
$container)
15 $ldap = $container->getParameter('ldap_enabled');
18 $container->prependExtensionConfig('security', array(
20 'chain_provider' => array(),
23 $loader = new Loader\
YamlFileLoader($container, new FileLocator(__DIR__
.'/../Resources/config'));
24 $loader->load('ldap.yml');
25 } elseif ($container->hasExtension('fr3d_ldap')) {
26 $container->prependExtensionConfig('fr3_d_ldap', array(
28 'host' => 'localhost',
31 'baseDn' => 'dc=example,dc=com',
37 public function load(array $configs, ContainerBuilder
$container)
39 $configuration = new Configuration();
40 $config = $this->processConfiguration($configuration, $configs);
42 $loader = new Loader\
YamlFileLoader($container, new FileLocator(__DIR__
. '/../Resources/config'));
43 $loader->load('services.yml');
44 if ($container->getParameter('ldap_enabled')) {
45 $loader->load('ldap_services.yml');
47 $container->setParameter('wallabag_user.registration_enabled', $config['registration_enabled']);
50 public function getAlias()
52 return 'wallabag_user';