<?php
namespace App\Controller;
use App\Repository\ArrayJsonRepository;
use App\Repository\ConfigurationRepository;
use App\Repository\Page\PageRepository;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\Security\Core\Security;
class HomeController extends AbstractController
{
#[Route('/', name: 'app_home')]
public function index(ConfigurationRepository $configurationRepository, Security $security, Request $request, PageRepository $pageRepository, ArrayJsonRepository $arrayJsonRepository): Response
{
$config = $configurationRepository->findOneBy([]);
$skeleton = $arrayJsonRepository->findOneBy(['name' => 'skeleton_template']);
$dynamicLinkArray = $arrayJsonRepository->findOneBy(['name' => 'dynamic_link']);
if ($dynamicLinkArray == null) {
$dynamicLink = null;
} else {
$dynamicLink = $dynamicLinkArray->getContent() ?? null;
}
$is_online = $config->isIsOnline();
if ($is_online == true) {
if ($security->isGranted('ROLE_ADMIN')) {
} else {
return $this->redirectToRoute('app_maintenance');
}
}
$page = $pageRepository->findOneBy(['id' => '1']);
$valeur = $request->query->get('email');
$email = false;
if (isset($valeur)) {
if ($valeur = 1) {
$email = true;
}
}
$metaDescription = $page->getMetaDescription();
$metaImg = $page->getMetaImg();
if ($metaImg == null) {
$metaImg = $config->getMetaImgDefault();
}
return $this->render('page/index.html.twig', [
'email' => $email,
'title' => $page->getTitle(),
'metaDescription' => $metaDescription,
'metaImg' => $metaImg,
'page' => $page,
'isHeaderComponent' => $page->isIsHeaderComponent(),
'skeleton' => $skeleton,
'dynamicLink' => $dynamicLink,
]);
}
}