vendor/store.shopware.com/loyxxsw6conversioncheckout/src/Storefront/Controller/AuthController.php line 76

Open in your IDE?
  1. <?php
  2. namespace LoyxxSW6ConversionCheckout\Storefront\Controller;
  3. use Shopware\Core\Checkout\Cart\SalesChannel\CartService;
  4. use Shopware\Core\Checkout\Customer\SalesChannel\AbstractLoginRoute;
  5. use Shopware\Core\Checkout\Customer\SalesChannel\AbstractLogoutRoute;
  6. use Shopware\Core\Checkout\Customer\SalesChannel\AbstractResetPasswordRoute;
  7. use Shopware\Core\Checkout\Customer\SalesChannel\AbstractSendPasswordRecoveryMailRoute;
  8. use Shopware\Core\Framework\DataAbstractionLayer\EntityRepositoryInterface;
  9. use Shopware\Core\Framework\Routing\Annotation\RouteScope;
  10. use Shopware\Core\Framework\Validation\DataBag\RequestDataBag;
  11. use Shopware\Core\System\SalesChannel\SalesChannelContext;
  12. use Shopware\Core\System\SystemConfig\SystemConfigService;
  13. use Shopware\Storefront\Page\Account\Login\AccountLoginPageLoader;
  14. use Symfony\Component\HttpFoundation\Request;
  15. use Symfony\Component\HttpFoundation\Response;
  16. use Symfony\Component\Routing\Annotation\Route;
  17. use Shopware\Storefront\Checkout\Cart\SalesChannel\StorefrontCartFacade;
  18. use Shopware\Storefront\Page\Account\RecoverPassword\AccountRecoverPasswordPageLoader;
  19. use Shopware\Core\System\SalesChannel\Context\SalesChannelContextServiceInterface;
  20. /**
  21.  * @RouteScope(scopes={"storefront"})
  22.  */
  23. class AuthController extends \Shopware\Storefront\Controller\AuthController
  24. {
  25.     private AccountLoginPageLoader $loginPageLoader;
  26.     public function __construct(
  27.         AccountLoginPageLoader $loginPageLoader,
  28.         AbstractSendPasswordRecoveryMailRoute $sendPasswordRecoveryMailRoute,
  29.         AbstractResetPasswordRoute $resetPasswordRoute,
  30.         AbstractLoginRoute $loginRoute,
  31.         AbstractLogoutRoute $logoutRoute,
  32.         StorefrontCartFacade $cartFacade,
  33.         AccountRecoverPasswordPageLoader $recoverPasswordPageLoader,
  34.         SalesChannelContextServiceInterface $salesChannelContextService
  35.     )
  36.     {
  37.         parent::__construct(
  38.             $loginPageLoader,
  39.             $sendPasswordRecoveryMailRoute,
  40.             $resetPasswordRoute,
  41.             $loginRoute,
  42.             $logoutRoute,
  43.             $cartFacade,
  44.             $recoverPasswordPageLoader,
  45.             $salesChannelContextService
  46.         );
  47.         $this->loginPageLoader = $loginPageLoader;
  48.     }
  49.     /**
  50.      * @Route("/account/login", name="frontend.account.login.page", methods={"GET"})
  51.      */
  52.     public function loginPage(Request $request, RequestDataBag $data, SalesChannelContext $context): Response
  53.     {
  54.         /** @var string $redirect */
  55.         $redirect = $request->get('redirectTo', 'frontend.account.home.page');
  56.         $customer = $context->getCustomer();
  57.         if ($customer !== null && $customer->getGuest() === false) {
  58.             $request->request->set('redirectTo', $redirect);
  59.             return $this->createActionResponse($request);
  60.         }
  61.         $page = $this->loginPageLoader->load($request, $context);
  62.         $view = '@Storefront/storefront/page/account/register/index.html.twig';
  63.         if ($request->get('persistCheckoutWindow', false)){
  64.             $view = '@Storefront/storefront/page/checkout/address/index.html.twig';
  65.         }
  66.         return $this->renderStorefront($view, [
  67.             'redirectTo' => $redirect,
  68.             'redirectParameters' => $request->get('redirectParameters', json_encode([])),
  69.             'page' => $page,
  70.             'loginError' => (bool) $request->get('loginError'),
  71.             'errorSnippet' => $request->get('errorSnippet'),
  72.             'data' => $data,
  73.         ]);
  74.     }
  75. }