<?php
declare(strict_types=1);
namespace BitBag\OpenMarketplace\Component\Core\Common\Controller\Resource;
use Sylius\Bundle\ResourceBundle\Controller\ResourceController;
use Symfony\Component\HttpFoundation\RedirectResponse;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
final class InquiryController extends ResourceController
{
private const LOGIN_PATH = '/%s/login';
public function createAction(Request $request): Response
{
/** @var RedirectResponse $response */
$response = parent::createAction($request);
if ($request->isMethod('POST') && $response->getTargetUrl() === sprintf(self::LOGIN_PATH, $request->getLocale())) {
$rfqFormData = $request->request->all();
$session = $request->getSession();
$session->set('inquiry_form_data', $rfqFormData);
$refererUrl = $request->headers->get('referer');
if ($refererUrl) {
$session->set('_security.shop.target_path', $refererUrl);
}
return $response;
}
return $response;
}
}