src/Action/PressSite/Localization/LandingPageAction.php line 15

Open in your IDE?
  1. <?php
  2. namespace App\Action\PressSite\Localization;
  3. use App\Action\PressSite\DomainAwareAction;
  4. use App\Service\PressSite\DomainAwareManager;
  5. use Symfony\Component\HttpFoundation\RedirectResponse;
  6. use Symfony\Component\HttpFoundation\Response;
  7. use Symfony\Component\Routing\RouterInterface;
  8. use Twig\Environment;
  9. /**
  10.  * Class LandingPageAction.
  11.  */
  12. class LandingPageAction extends DomainAwareAction
  13. {
  14.     /**
  15.      * The routing manager.
  16.      *
  17.      * @var \Symfony\Component\Routing\RouterInterface
  18.      */
  19.     private $router;
  20.     public function __construct(Environment $twigDomainAwareManager $domainAwareManagerRouterInterface $router)
  21.     {
  22.         parent::__construct($twig$domainAwareManager);
  23.         $this->router $router;
  24.     }
  25.     /**
  26.      * Responsible for validating the current domain based on hostname and setting the request locale.
  27.      *
  28.      * @return \Symfony\Component\HttpFoundation\Response
  29.      *   The generated response object
  30.      */
  31.     public function __invoke(): Response
  32.     {
  33.         return new RedirectResponse(
  34.             $this->router->generate('press_site.actions.account.sign_in', [
  35.                 '_locale' => $this->getDomainManager()->getCurrentByHostnameAndLocale()->getLanguageCode(),
  36.             ])
  37.         );
  38.     }
  39. }