<?php
namespace App\Controller\Cms;
use App\Entity\Articles\Article;
use App\Service\CMS\CmsService;
use App\Entity\Utilisateur\Utilisateur;
use App\Entity\Articles\ArticleCategorie;
use App\Entity\Articles\Categorie;
use App\Entity\Articles\ConditionAchat;
use App\Entity\Articles\FamilleCompta;
use App\Entity\Articles\HistoriqueArticle;
use App\Entity\Articles\Image;
use App\Entity\Articles\Marque;
use App\Entity\Articles\MouvementStock;
use App\Entity\Articles\RaisonMouvementStock;
use App\Entity\Articles\RefsEquivalentes;
use App\Entity\Articles\Type;
use App\Entity\FO\Societe;
use App\Entity\Fournisseurs\Fournisseur;
use App\Entity\Ged\Fichier;
use App\Entity\GestionComerciale\Commande;
use App\Model\GestionCommerciale\TypeDocumentCommercial;
use App\Entity\GestionComerciale\ArticleCommande;
use App\Entity\GestionComerciale\StatutCommande;
use App\Entity\MarketPlace\ArticleMarketPlace;
use App\Entity\MarketPlace\ArticleMarketPlaceCaracteristique;
use App\Entity\MarketPlace\ArticleMarketPlaceImage;
use App\Entity\MarketPlace\Caracteristiques;
use App\Entity\MarketPlace\CategorieErpCategorieMarketPlace;
use App\Entity\MarketPlace\CompteMarketPlace;
use App\Entity\MarketPlace\ErreurPublicationArticleMarketPlace;
use App\Entity\MarketPlace\MarketPlace;
use App\Entity\MarketPlace\Profil;
use App\Entity\MarketPlace\StatutArticle;
use App\Entity\MarketPlace\TarifModeLivraison;
use App\Entity\Vehicules\Application;
use App\Entity\Vehicules\Modele;
use App\Entity\Vehicules\Type as VehiculesType;
use App\Form\Articles\ArticleDiversType;
use App\Form\Articles\ArticleRechercheType;
use App\Form\Articles\ArticleType;
use App\Library\Datatable\Util\Datatable;
use App\Library\Uploader\Services\FileUploader;
use App\Security\Voter\EntityVoter;
use App\Service\Articles\ArticleCategorieService;
use App\Service\Articles\ArticleService;
use App\Service\Articles\DocumentArticle;
use App\Service\Articles\ImageArticleService;
use App\Service\MarketPlace\ArticleMarketPlaceService;
use App\Service\Utilisateur\ColonneTableauService;
use Doctrine\ORM\EntityManagerInterface;
use DTS\eBaySDK\FileTransfer\Types\Data;
use JMS\Serializer\SerializerBuilder;
use Knp\Component\Pager\PaginatorInterface;
use Knp\Snappy\Pdf;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\Security\Core\Exception\AccessDeniedException;
use Symfony\Component\Validator\Validator\ValidatorInterface;
use Symfony\Contracts\Translation\TranslatorInterface;
class CmsController extends AbstractController
{
/**
* @Route("/faq", name="dtc_faq")
*/
public function faqAction(Request$request, EntityManagerInterface $em,TranslatorInterface $translator)
{
return $this->render('Cms/Cms/faq.html.twig',[]);
}
/**
* @Route("/rgpd", name="dtc_rgpd")
*/
public function rgpdAction(Request$request, EntityManagerInterface $em,TranslatorInterface $translator)
{
return $this->render('Cms/Cms/rgpd.html.twig',[]);
}
/**
* @Route("/a-propos", name="dtc_apropos")
*/
public function aProposAction(Request$request, EntityManagerInterface $em,TranslatorInterface $translator)
{
return $this->render('Cms/Cms/apropos.html.twig',[]);
}
/**
* @Route("/conditions-generales-vente", name="dtc_conditions")
*/
public function conditionsAction(Request$request, EntityManagerInterface $em,TranslatorInterface $translator)
{
return $this->render('Cms/Cms/conditions.html.twig',[]);
}
/**
* @Route("/mentions-legales", name="dtc_mentions")
*/
public function mentionsAction(Request$request, EntityManagerInterface $em,TranslatorInterface $translator)
{
return $this->render('Cms/Cms/mentions.html.twig',[]);
}
/**
* @Route("/equipe", name="dtc_equipe")
*/
public function equipeAction(Request$request, EntityManagerInterface $em,TranslatorInterface $translator)
{
$equipe = $em->getRepository(Utilisateur::class)->findBy(["equipe" =>true],["position"=>"ASC"] );
return $this->render('Cms/Cms/equipe.html.twig',["equipe"=>$equipe]);
}
/**
* @Route("/sav", name="dtc_sav")
*/
public function savAction(Request$request, EntityManagerInterface $em,TranslatorInterface $translator)
{
return $this->render('Cms/Cms/sav.html.twig',[]);
}
/**
* @Route("/sav/pdf/{titre}", name="dtc_sav_pdf")
*/
public function savPdf($titre,CmsService $cmsService): Response
{
$user = $this->getUser();
$response = $cmsService->getPdfSav($titre);
if (!$response) {
throw $this->createNotFoundException("PDF introuvable");
}
return $response;
}
}