<?php
namespace App\Controller;
use App\Entity\FeelBack;
use App\Repository\FeelBackRepository;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Notifier\Notification\Notification;
use Symfony\Component\Notifier\NotifierInterface;
use Symfony\Component\Routing\Annotation\Route;
class ContactController extends AbstractController
{
private FeelBackRepository $feelBackRepository ;
/**
* @param FeelBackRepository $feelBackRepository
*/
public function __construct(FeelBackRepository $feelBackRepository)
{
$this->feelBackRepository = $feelBackRepository;
}
#[Route('/contact', name: 'app_contact')]
public function index(Request $request, EntityManagerInterface $entityManager, NotifierInterface $notifier): Response
{
if($request->isMethod("POST")&& ($this->isCsrfTokenValid('contact', $request->request->get('token')))){
//dd($request);
$nom = $request->request->get('name');
$email = $request->request->get('email');
$telephone = $request->request->get('telephone');
$sujet= $request->request->get('subject');
$message= $request->request->get('message');
$feelBack = new FeelBack();
$feelBack->setName($nom);
$feelBack->setEmail($email);
$feelBack->setTelephone($telephone);
$feelBack->setSubject($sujet);
$feelBack->setMessage($message);
$entityManager->persist($feelBack);
$entityManager->flush();
$notifier->send(new Notification("Merci de nous avoir contacté",['browser']));
}
return $this->render('contact/index.html.twig', [
'controller_name' => 'ContactController',
]);
}
}