X-Git-Url: https://git.rapsys.eu/userbundle/blobdiff_plain/d3c0403000560ca0fd1b08fced1e043584bf4e54..ffeb0f7e44aa00f2f163e20e4ca3e03a8b790653:/Handler/AuthenticationFailureHandler.php

diff --git a/Handler/AuthenticationFailureHandler.php b/Handler/AuthenticationFailureHandler.php
index d1c2a34..14d4dec 100644
--- a/Handler/AuthenticationFailureHandler.php
+++ b/Handler/AuthenticationFailureHandler.php
@@ -12,7 +12,14 @@
 namespace Rapsys\UserBundle\Handler;
 
 use Doctrine\Persistence\ManagerRegistry;
+
 use Psr\Log\LoggerInterface;
+
+use Rapsys\PackBundle\Util\SluggerUtil;
+
+use Rapsys\UserBundle\Exception\UnactivatedException;
+use Rapsys\UserBundle\RapsysUserBundle;
+
 use Symfony\Bridge\Twig\Mime\TemplatedEmail;
 use Symfony\Component\DependencyInjection\ContainerInterface;
 use Symfony\Component\HttpFoundation\RedirectResponse;
@@ -35,19 +42,19 @@ use Symfony\Component\Security\Http\Authentication\DefaultAuthenticationFailureH
 use Symfony\Component\Security\Http\HttpUtils;
 use Symfony\Contracts\Translation\TranslatorInterface;
 
-use Rapsys\PackBundle\Util\SluggerUtil;
-use Rapsys\UserBundle\Exception\UnactivatedException;
-use Rapsys\UserBundle\RapsysUserBundle;
-
 /**
  * {@inheritdoc}
  */
 class AuthenticationFailureHandler extends DefaultAuthenticationFailureHandler {
+	/**
+	 * Alias string
+	 */
+	protected string $alias;
+
 	/**
 	 * Config array
 	 */
 	protected array $config;
-	protected array $options;
 	protected array $defaultOptions = [
 		'failure_path' => null,
 		'failure_forward' => false,
@@ -56,36 +63,8 @@ class AuthenticationFailureHandler extends DefaultAuthenticationFailureHandler {
 	];
 
 	/**
-	 * Doctrine instance
-	 */
-	protected ManagerRegistry $doctrine;
-
-	/**
-	 * MailerInterface
-	 */
-	protected MailerInterface $mailer;
-
-	/**
-	 * Router instance
-	 */
-	protected RouterInterface $router;
-
-	/**
-	 * Slugger instance
-	 */
-	protected SluggerUtil $slugger;
-
-	/**
-	 * RequestStack instance
-	 */
-	protected RequestStack $stack;
-
-	/**
-	 * Translator instance
-	 */
-	protected TranslatorInterface $translator;
-
-	/**
+	 * {@inheritdoc}
+	 *
 	 * @xxx Second argument will be replaced by security.firewalls.main.logout.target
 	 * @see vendor/symfony/security-bundle/DependencyInjection/SecurityExtension.php +360
 	 *
@@ -100,33 +79,13 @@ class AuthenticationFailureHandler extends DefaultAuthenticationFailureHandler {
 	 * @param SluggerUtil $slugger The slugger instance
 	 * @param RequestStack $stack The stack instance
 	 * @param TranslatorInterface $translator The translator instance
-	 *
-	 * {@inheritdoc}
 	 */
-	public function __construct(HttpKernelInterface $httpKernel, HttpUtils $httpUtils, array $options, LoggerInterface $logger, ContainerInterface $container, ManagerRegistry $doctrine, MailerInterface $mailer, RouterInterface $router, SluggerUtil $slugger, RequestStack $stack, TranslatorInterface $translator) {
-		//Set config
-		$this->config = $container->getParameter(self::getAlias());
-
-		//Set doctrine
-		$this->doctrine = $doctrine;
-
-		//Set mailer
-		$this->mailer = $mailer;
-
-		//Set router
-		$this->router = $router;
-
-		//Set slugger
-		$this->slugger = $slugger;
-
-		//Set stack
-		$this->stack = $stack;
-
-		//Set translator
-		$this->translator = $translator;
-
+	public function __construct(protected HttpKernelInterface $httpKernel, protected HttpUtils $httpUtils, protected array $options, protected ?LoggerInterface $logger, protected ContainerInterface $container, protected ManagerRegistry $doctrine, protected MailerInterface $mailer, protected RouterInterface $router, protected SluggerUtil $slugger, protected RequestStack $stack, protected TranslatorInterface $translator) {
 		//Call parent constructor
 		parent::__construct($httpKernel, $httpUtils, $options, $logger);
+
+		//Set config
+		$this->config = $container->getParameter($this->alias = RapsysUserBundle::getAlias());
 	}
 
 	/**
@@ -149,9 +108,9 @@ class AuthenticationFailureHandler extends DefaultAuthenticationFailureHandler {
 	}
 
 	/**
-	 * This is called when an interactive authentication attempt fails
-	 *
 	 * {@inheritdoc}
+	 *
+	 * This is called when an interactive authentication attempt fails
 	 */
 	public function onAuthenticationFailure(Request $request, AuthenticationException $exception): Response {
 		//With bad credential exception
@@ -233,7 +192,7 @@ class AuthenticationFailureHandler extends DefaultAuthenticationFailureHandler {
 			//With not enabled user
 			} elseif ($parent instanceof DisabledException) {
 				//Add error message account is not enabled
-				$this->addFlash('error', $this->translator->trans('Your account is not enabled'));
+				$this->addFlash('error', $this->translator->trans('Account not enabled', [], $this->alias));
 
 				//Redirect on the same route with sent=1 to cleanup form
 				return new RedirectResponse($this->router->generate($request->get('_route'), $request->get('_route_params')), 302);
@@ -292,7 +251,7 @@ class AuthenticationFailureHandler extends DefaultAuthenticationFailureHandler {
 					} while(next($keys));
 
 					//Set translation
-					$current = $this->translator->trans($current);
+					$current = $this->translator->trans($current, [], $this->alias);
 
 					//Remove reference
 					unset($current);
@@ -302,7 +261,8 @@ class AuthenticationFailureHandler extends DefaultAuthenticationFailureHandler {
 				$context['subject'] = $subject = ucfirst(
 					$this->translator->trans(
 						$this->config['register']['mail']['subject'],
-						$this->slugger->flatten($context, null, '.', '%', '%')
+						$this->slugger->flatten($context, null, '.', '%', '%'),
+						$this->alias
 					)
 				);
 
@@ -331,14 +291,14 @@ class AuthenticationFailureHandler extends DefaultAuthenticationFailureHandler {
 				//Catch obvious transport exception
 				} catch(TransportExceptionInterface $e) {
 					//Add error message mail unreachable
-					$this->addFlash('error', $this->translator->trans('Unable to reach account'));
+					$this->addFlash('error', $this->translator->trans('Unable to reach account', [], $this->alias));
 				}
 
 				//Add notice
-				$this->addFlash('notice', $this->translator->trans('Your verification mail has been sent, to activate your account you must follow the confirmation link inside'));
+				$this->addFlash('notice', $this->translator->trans('Your verification mail has been sent, to activate your account follow the confirmation link inside', [], $this->alias));
 
 				//Add junk warning
-				$this->addFlash('warning', $this->translator->trans('If you did not receive a verification mail, check your Spam or Junk mail folders'));
+				$this->addFlash('warning', $this->translator->trans('If you did not receive a verification mail, check your Spam or Junk mail folder', [], $this->alias));
 
 				//Redirect on the same route with sent=1 to cleanup form
 				return new RedirectResponse($this->router->generate($request->get('_route'), $request->get('_route_params')), 302);
@@ -348,11 +308,4 @@ class AuthenticationFailureHandler extends DefaultAuthenticationFailureHandler {
 		//Call parent function
 		return parent::onAuthenticationFailure($request, $exception);
 	}
-
-	/**
-	 * {@inheritdoc}
-	 */
-	public function getAlias(): string {
-		return RapsysUserBundle::getAlias();
-	}
 }