<?php
namespace App\Controller;
// use App\Repository\FormuleRepository;
// use App\Repository\ForfaitRepository;
use App\Service\SessionService;
use App\Entity\Main\SuggestedOffer;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\HttpFoundation\JsonResponse;
class SuggestedOfferController extends AbstractController
{
private $ss;
public function __construct( SessionService $ss)
{
$this->ss = $ss;
}
/**
* @Route("/suggested_offer", name="suggested_offer")
*/
public function getSuggestedOffers(Request $request): Response
{
$em = $this->getDoctrine()->getManager();
$error = '';
$arraySuggestedOffers = array();
$suggestedOffers = $em->getRepository(SuggestedOffer::class)->findAll();
foreach ($suggestedOffers as $key => $suggestedOffer) {
$forfaits = $suggestedOffer->getForfaitIncluded();
$array_suggestion = array(
'title' => $suggestedOffer->getTitle(),
'message' => $suggestedOffer->getMessage(),
'formule_code' => $suggestedOffer->getFormuleTest()->getCode(),
'forfait_cible' => array(
'formule' => $suggestedOffer->getForfaitCible()->getFormule()->getCode(),
'id' => $suggestedOffer->getForfaitCible()->getID(),
),
'url_ext' => $suggestedOffer->getLienExterne(),
'text_button' => $suggestedOffer->getTextButton(),
);
$array_suggestion['forfaits'] = array();
foreach ($forfaits as $key => $forfait_include) {
$array_suggestion['forfaits'][] = $forfait_include->getID();
}
$arraySuggestedOffers[] = $array_suggestion;
}
if ($error != '') {
return new JsonResponse(['error' => $error], JsonResponse::HTTP_CREATED);
} else {
return new JsonResponse(['suggested_offers' => $arraySuggestedOffers], JsonResponse::HTTP_CREATED);
}
}
}