src/IUTUDC/WebsiteBundle/Controller/DefaultController.php line 21

Open in your IDE?
  1. <?php
  2. namespace IUTUDC\WebsiteBundle\Controller;
  3. use Symfony\Component\HttpFoundation\RedirectResponse;
  4. use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
  5. use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method;
  6. #use Symfony\Bundle\FrameworkBundle\Controller\Controller;
  7. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  8. use Symfony\Component\HttpFoundation\Request;
  9. use Symfony\Component\Mime\Email;
  10. use Symfony\Component\Mailer\MailerInterface;
  11. class DefaultController extends AbstractController
  12. {
  13.     /**
  14.      * @Route("/contact", name="iutudcwebsite_contact")
  15.      * @Method({"GET", "POST"})
  16.      */
  17.     public function contactAction(Request $requestMailerInterface $mailer)
  18.     {
  19.         $form $this->createForm('IUTUDC\WebsiteBundle\Form\ContactType');
  20.         $form->handleRequest($request);
  21.         $form_errors = [];
  22.         if ($form->isSubmitted())
  23.         {
  24.             if ($form->isValid())
  25.             {
  26.                 //dump($form->getData());
  27.                 if($this->sendEmail($form->getData(),$mailer)){
  28.                     $this->addFlash(
  29.                     'notice',
  30.                     'Merci de nous avoir contacté, nous répondrons à votre message dans les plus brefs délais.'
  31.                 );
  32.                 
  33.                 
  34.                     return $this->redirectToRoute('iutudcwebsite_contact');
  35.                 }
  36.             }
  37.             $form_errors $form->getErrors(true);
  38.         }
  39.         return $this->render('@IUTUDCWebsite/Default/contact.html.twig', array(
  40.             'form' => $form->createView(),
  41.             'form_errors' => $form_errors,
  42.         ));
  43.     }
  44.     
  45.     
  46.     private function sendEmail($data,$mailer){    
  47.                 $emailObject = (new Email())
  48.                     ->from("contact@iut-udc.online")
  49.                     ->to("contact@iut-udc.online")
  50.                     ->cc($data["email"])
  51.                     //->bcc('bcc@example.com')
  52.                     //->replyTo('fabien@example.com')
  53.                     //->priority(Email::PRIORITY_HIGH)
  54.                     ->subject("Formulaire de contact "$data["objet"])
  55.                     ->html($data["message"]);
  56.         return $mailer->send($emailObject);
  57.     }
  58. }