- <?php
- declare(strict_types=1);
- namespace Slivki\Controller\OnlineOrder\GiftCertificate;
- use Slivki\Controller\SiteController;
- use Slivki\Message\Query\OnlineOrder\GiftCertificate\SelectGiftCertificatesForBuyOnlyCodesQuery;
- use Slivki\Messenger\Query\QueryBusInterface;
- use Slivki\Util\CommonUtil;
- use Symfony\Component\HttpFoundation\Request;
- use Symfony\Component\HttpFoundation\Response;
- use Symfony\Component\HttpKernel\KernelInterface;
- use Symfony\Component\Routing\Annotation\Route;
- final class SelectGiftCertificatesForBuyOnlyCodesAction extends SiteController
- {
-     private QueryBusInterface $queryBus;
-     public function __construct(
-         KernelInterface $kernel,
-         QueryBusInterface $queryBus
-     ) {
-         parent::__construct($kernel);
-         $this->queryBus = $queryBus;
-     }
-     /**
-      * @Route("/gift-certificate/select/{offerId}/code",
-      *     requirements={"offerId"="\d+"},
-      *     name="gift_certificates_for_by_only_code",
-      *     methods={"GET"},
-      * ),
-      */
-     public function __invoke(int $offerId, Request $request): Response
-     {
-         return $this->render(
-             CommonUtil::isMobileDevice($request) ? 'Slivki/mobile/delivery/order.html.twig' : 'Slivki/delivery/order.html.twig',
-             $this->queryBus->handle(new SelectGiftCertificatesForBuyOnlyCodesQuery($this->getUser(), $offerId))->jsonSerialize(),
-         );
-     }
- }
-