src/Controller/LocalUserController.php line 24

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  4. use Symfony\Component\HttpFoundation\RedirectResponse;
  5. use Symfony\Component\HttpFoundation\Request;
  6. use Symfony\Component\Routing\Annotation\Route;
  7. class LocalUserController extends AbstractController
  8. {
  9.     /**
  10.      * Change the locale for the current user.
  11.      *
  12.      * @param string $language
  13.      *
  14.      * @return RedirectResponse
  15.      */
  16.     #[Route(path'/setlocale/{language}'name'setlocale')]
  17.     public function setLocaleAction(Request $request$language null)
  18.     {
  19.         if ($language != null) {
  20.             // Store local in user session
  21.             $request->getSession()->set('_locale'$language);
  22.         }
  23.         // Try to redirect user to referer url
  24.         $url $request->headers->get('referer');
  25.         if (empty($url)) {
  26.             $url $this->container->get('router')->generate('dashboard');
  27.         }
  28.         return new RedirectResponse($url);
  29.     }
  30. }