<?php
declare(strict_types=1);
namespace Slivki\Controller\Companies;
use Slivki\Controller\SiteController;
use Slivki\Repository\PartnerGiftOffer\PartnerGiftOfferRepositoryInterface;
use Slivki\Services\DeviceTypeService;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpKernel\KernelInterface;
use Symfony\Component\Routing\Annotation\Route;
final class GetPartnerGiftOffersAction extends SiteController
{
private DeviceTypeService $deviceTypeService;
private PartnerGiftOfferRepositoryInterface $partnerGiftOfferRepository;
public function __construct(
KernelInterface $kernel,
DeviceTypeService $deviceTypeService,
PartnerGiftOfferRepositoryInterface $partnerGiftOfferRepository
) {
parent::__construct($kernel);
$this->deviceTypeService = $deviceTypeService;
$this->kernel = $kernel;
$this->partnerGiftOfferRepository = $partnerGiftOfferRepository;
}
/**
* @Route("/companies/vitrina-podarkov", methods={"GET"}, name="get_partner_gift_offers")
*/
public function __invoke(Request $request): Response
{
return $this->render(
$this->deviceTypeService->isMobileDevice($request)
? 'Slivki/mobile/bonuses_partner/index.html.twig'
: 'Slivki/bonuses_partner/index.html.twig',
[
'giftOffers' => $this->partnerGiftOfferRepository->getAllActive(),
]
);
}
}