From de3d716ae4e8ca98dabdcb2ec9c18219e05856f7 Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Sat, 2 Jul 2016 14:35:52 +0200 Subject: Add option to disable registration --- .../UserBundle/Controller/RegistrationController.php | 20 ++++++++++++++++++++ .../UserBundle/Controller/SecurityController.php | 18 ++++++++++++++++++ .../UserBundle/DependencyInjection/Configuration.php | 8 ++++++++ .../DependencyInjection/WallabagUserExtension.php | 1 + .../Resources/views/Security/login.html.twig | 4 +++- 5 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 src/Wallabag/UserBundle/Controller/RegistrationController.php create mode 100644 src/Wallabag/UserBundle/Controller/SecurityController.php (limited to 'src') diff --git a/src/Wallabag/UserBundle/Controller/RegistrationController.php b/src/Wallabag/UserBundle/Controller/RegistrationController.php new file mode 100644 index 00000000..bba27cfb --- /dev/null +++ b/src/Wallabag/UserBundle/Controller/RegistrationController.php @@ -0,0 +1,20 @@ +container->getParameter('wallabag_user.registration_enabled')) { + parent::registerAction($request); + } + else + { + return $this->redirectToRoute('fos_user_security_login', array(), 301); + } + } +} diff --git a/src/Wallabag/UserBundle/Controller/SecurityController.php b/src/Wallabag/UserBundle/Controller/SecurityController.php new file mode 100644 index 00000000..a5f93763 --- /dev/null +++ b/src/Wallabag/UserBundle/Controller/SecurityController.php @@ -0,0 +1,18 @@ +render('FOSUserBundle:Security:login.html.twig', + array_merge( + $data, + array('registration_enabled' => $this->container->getParameter('wallabag_user.registration_enabled')) + ) + ); + } +} diff --git a/src/Wallabag/UserBundle/DependencyInjection/Configuration.php b/src/Wallabag/UserBundle/DependencyInjection/Configuration.php index 4223f8db..971ce1a0 100644 --- a/src/Wallabag/UserBundle/DependencyInjection/Configuration.php +++ b/src/Wallabag/UserBundle/DependencyInjection/Configuration.php @@ -12,6 +12,14 @@ class Configuration implements ConfigurationInterface $treeBuilder = new TreeBuilder(); $rootNode = $treeBuilder->root('wallabag_user'); + $rootNode + ->children() + ->booleanNode('registration_enabled') + ->defaultValue(true) + ->end() + ->end() + ; + return $treeBuilder; } } diff --git a/src/Wallabag/UserBundle/DependencyInjection/WallabagUserExtension.php b/src/Wallabag/UserBundle/DependencyInjection/WallabagUserExtension.php index c12a8937..99040f69 100644 --- a/src/Wallabag/UserBundle/DependencyInjection/WallabagUserExtension.php +++ b/src/Wallabag/UserBundle/DependencyInjection/WallabagUserExtension.php @@ -16,6 +16,7 @@ class WallabagUserExtension extends Extension $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config')); $loader->load('services.yml'); + $container->setParameter('wallabag_user.registration_enabled', $config['registration_enabled']); } public function getAlias() diff --git a/src/Wallabag/UserBundle/Resources/views/Security/login.html.twig b/src/Wallabag/UserBundle/Resources/views/Security/login.html.twig index 8474b497..13a903ab 100644 --- a/src/Wallabag/UserBundle/Resources/views/Security/login.html.twig +++ b/src/Wallabag/UserBundle/Resources/views/Security/login.html.twig @@ -33,7 +33,9 @@
- {{ 'security.login.register'|trans }} + {% if registration_enabled %} + {{ 'security.login.register'|trans }} + {% endif %}