<?php
namespace App\Controller;
use App\Form\ContactType;
use Symfony\Component\Mime\Email;
use App\Repository\ExpertRepository;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Mailer\MailerInterface;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
class ContactController extends AbstractController
{
/**
* @Route("/contact", name="contact")
*/
public function index(ExpertRepository $expertRepository, Request $request, MailerInterface $mailer)
{
$form = $this->createForm(ContactType::class);
$form->handleRequest($request);
if($form->isSubmitted() && $form->isValid()) {
$contactFormData = $form->getData();
// $message = (new Email())
// ->from($contactFormData['email'])
// ->to('m.matt63@gmail.com')
// ->subject('Email from contact form eurcaw-re')
// ->text('Sender : '.$contactFormData['email'].\PHP_EOL.
// $contactFormData['message'],
// 'text/plain');
// $mailer->send($message);
$headers = 'From: webmaster-eurcaw@inrae.fr' . "\r\n" .
'Reply-To: matthieu.reichstadt@inrae.fr' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
$experts = $expertRepository->findByIsAdmin(true);
$mail_ok=0;
foreach ($experts as $expert)
{
if (mail($expert->getEmail(),"Email from contact form eurcaw-re","Dear admin,\nYou've received an email from EURCAW website.\n\nContact: ".$contactFormData['email']."\n\nMessage:\n".$contactFormData['message'],$headers))
$mail_ok++;
}
if ($mail_ok > 0) $this->addFlash('success', 'Your email has been sent.');
else $this->addFlash('error', 'Error while sending the mail.');
return $this->redirectToRoute('contact');
}
return $this->render('contact/index.html.twig', [
'form' => $form->createView()
]);
}
}