<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;
use stdClass;
//use App\Services\ReCaptcha\ReCaptcha;
use ReCaptcha\ReCaptcha;
class ContactController extends AbstractController
{
#[Route('/contact', name: 'app_contact', methods: ['POST','GET'])]
public function index(Request $request): Response
{
return $this->render('contact/contact.html.twig', [
'controller_name' => 'ContactController',
]);
}
#[Route('/contact-traitement', name: 'app_contact_traitement', methods: ['POST'])]
public function conctactTraitament(Request $request): Response
{
define('SITE_KEY', "6Leu25khAAAAAEpiNstG2FzJR6VvDLM4znabOdT_");
define('SECRET_KEY', "6Leu25khAAAAAIhTz-PXEdiU2YN82rKiGq6lbJLi");
$recaptcha = new ReCaptcha(SECRET_KEY);
//dd($recaptcha);
$recaptchaResponse = $recaptcha->verify($request->request->get('g-recaptcha-response'), $_SERVER['REMOTE_ADDR']);
dd('ok');
if (!$recaptchaResponse->isSuccess()) {
$output = json_encode(array('type' => 'error', 'text' => '<b>Captcha</b> Validation Required!'));
echo "<p class='error'>Oups!!! Une erreur c'est produite. Veuillez confirmé que vous n\'etes pas un robot</p>";
die($output);
}
//$response = $request->getContent();
//Recuperation des informations du formulaire
$nom = $request->request->get('name');
$prenom = $request->request->get('prenom');
$email = $request->request->get('email');
$telephone = $request->request->get('phone');
$ville = $request->request->get('ville');
$objet = $request->request->get('objet');
$message = $request->request->get('message');
$mail = new PHPMailer();
$user = new stdClass();
$user->nom = $nom;
$user->prenom = $prenom;
$user->email = $email;
$user->telephone = $telephone;
$user->ville = $ville;
$user->objet = $objet;
$user->message = $message;
$mail->setFrom('no-reply@legrandsoft.com', 'GL-Contact');
//$mail->addAddress($email);
//$mail->addAddress('contact@legrandsoft.com');
$mail->addAddress('anycerolly@gmail.com');
$mail->Subject = utf8_decode('Contact');
$mail->msgHTML($this->render('contact/email-contact.html.twig', ['user' => $user])->getContent());
$mail->send();
$mail = new PHPMailer();
$mail->setFrom('no-reply@legrandsoft.com', 'GL-Contact');
$mail->addAddress($email);
$mail->Subject = utf8_decode('Accusé de reception');
$mail->msgHTML($this->render('contact/email-reponse-contact.html.twig', ["user" => $user])->getContent());
$mail->send();
// return $this->render('contact/email-contact.html.twig', [
// 'user' => $user,
// ]);
return $this->json(['code'=>200, 'message'=>'Votre message a bien été envoyé !'],200);
//return $this->render('contact/email-contact.html.twig',['user'=>$user]);
}
#[Route('/email', name: 'app_email', methods: ['POST','GET'])]
public function email(Request $request): Response
{
return $this->render('contact/email-contact.html.twig');
}
#[Route('/email-reponse', name: 'app_email_reponse', methods: ['POST','GET'])]
public function emailReoinse(Request $request): Response
{
return $this->render('contact/email-reponse-contact.html.twig');
}
}