ajout des traductions en et fr
This commit is contained in:
20
src/Controller/SettingController.php
Normal file
20
src/Controller/SettingController.php
Normal file
@@ -0,0 +1,20 @@
|
||||
<?php
|
||||
|
||||
namespace App\Controller;
|
||||
|
||||
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
use Symfony\Component\Routing\Attribute\Route;
|
||||
use Symfony\Component\Translation\LocaleSwitcher;
|
||||
|
||||
class SettingController extends AbstractController
|
||||
{
|
||||
#[Route('/setting/{locale}', name: 'app_setting_locale')]
|
||||
public function index(LocaleSwitcher $localeSwitcher, string $locale, Request $request): Response
|
||||
{
|
||||
$localeSwitcher->setLocale($locale);
|
||||
$request->getSession()->set('_locale', $locale);
|
||||
return $this->redirectToRoute('app_posts');
|
||||
}
|
||||
}
|
17
src/EventListener/LocaleListener.php
Normal file
17
src/EventListener/LocaleListener.php
Normal file
@@ -0,0 +1,17 @@
|
||||
<?php
|
||||
|
||||
namespace App\EventListener;
|
||||
|
||||
use Symfony\Component\EventDispatcher\Attribute\AsEventListener;
|
||||
use Symfony\Component\HttpKernel\Event\RequestEvent;
|
||||
use Symfony\Component\HttpKernel\KernelEvents;
|
||||
|
||||
final class LocaleListener
|
||||
{
|
||||
#[AsEventListener(event: KernelEvents::REQUEST)]
|
||||
public function onKernelRequest(RequestEvent $event): void
|
||||
{
|
||||
$request = $event->getRequest();
|
||||
$request->setLocale($request->getSession()->get('_locale', 'en'));
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user