<?php
/*
* Ce fichier est la propriété de l'association (c) Projets Métiers
*
* (c) crée par Jean-Marc CATALA <jeanmmarccatala@gmail.com>
*
*/
namespace App\Controller;
use App\Service\EmailService;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\Mailer\MailerInterface;
use Symfony\Component\Mime\Email;
use App\Entity\contactMail;
use App\Form\contactMailType;
use Symfony\Component\Mailer\Transport\Smtp\EsmtpTransport;
use function dd;
class MailController extends AbstractController
{
/**
* @var EmailService
*/
private $emailService;
/**
* @Route("/contact", name="contact")
*/
public function contactAction(Request $request, EmailService $emailService)
{
$mail = new contactMail();
$form = $this->get('form.factory')->create(contactMailType::class, $mail);
$request = $this->get('request_stack')->getCurrentRequest();
$message = 'vide';
// On vérifie qu'elle est de type POST
if ($request->getMethod() == 'POST') {
$form->handleRequest($request);
if ($form->isValid()) {
$courriel = $form->get('courriel')->getData();
//dd($courriel);
$nom = $form->get('nom')->getData();
$prenom = $form->get('prenom')->getData();
$sujet = $form->get('sujet')->getData();
$emailService->sendEmail([
'to' => 'contact@projetsmetiers.org',
'subject' => $sujet,
'template' => 'emails/contact.email.twig',
'context' => [
'courriel' => $courriel,
'nom' => $nom,
'prenom' => $prenom,
'sujet' => $sujet,
],
]);
$this->addFlash('success', 'Votre message à bien été envoyé! Merci!');
return $this->redirectToRoute('contact');
}
}
return $this->render('general/contact.html.twig', array(
'form' => $form->createView(),
'mail' => $mail));
}
}