From 0b68242f61027c924662363746e001f2652f5b95 Mon Sep 17 00:00:00 2001 From: Angel Fernando Quiroz Campos <1697880+AngelFQC@users.noreply.github.com> Date: Thu, 9 Jan 2025 01:58:31 -0500 Subject: [PATCH] Internal: Set user locale on session when switching user --- .../EventSubscriber/SwitchUserSubscriber.php | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/CoreBundle/EventSubscriber/SwitchUserSubscriber.php diff --git a/src/CoreBundle/EventSubscriber/SwitchUserSubscriber.php b/src/CoreBundle/EventSubscriber/SwitchUserSubscriber.php new file mode 100644 index 0000000000..abc259b225 --- /dev/null +++ b/src/CoreBundle/EventSubscriber/SwitchUserSubscriber.php @@ -0,0 +1,33 @@ +getRequest(); + + if ($request->hasSession() && ($session = $request->getSession())) { + /** @var User $user */ + $user = $event->getTargetUser(); + + $session->set('_locale_user', $user->getLocale()); + } + } + + public static function getSubscribedEvents(): array + { + return [ + 'security.switch_user' => 'onSecuritySwitchUser', + ]; + } +}