diff --git a/src/Controller/ContactController.php b/src/Controller/ContactController.php new file mode 100644 index 0000000..f8a3464 --- /dev/null +++ b/src/Controller/ContactController.php @@ -0,0 +1,55 @@ +isMethod('POST')) { + $name = trim($request->request->getString('name')); + $surname = trim($request->request->getString('surname')); + $email = trim($request->request->getString('email')); + $message = trim($request->request->getString('message')); + + if ('' === $name || '' === $surname || '' === $email || '' === $message) { + $this->addFlash('error', 'Tous les champs sont obligatoires.'); + + return $this->redirectToRoute('app_contact'); + } + + $html = $this->renderView('email/contact.html.twig', [ + 'name' => $name, + 'surname' => $surname, + 'email' => $email, + 'message' => $message, + ]); + + $mailerService->sendEmail( + to: 'contact@e-cosplay.fr', + subject: sprintf('Contact de %s %s', $surname, $name), + content: $html, + replyTo: $email, + withUnsubscribe: false, + ); + + $this->addFlash('success', 'Votre message a bien ete envoye. Nous vous repondrons dans les plus brefs delais.'); + + return $this->redirectToRoute('app_contact'); + } + + return $this->render('contact/index.html.twig', [ + 'breadcrumbs' => [ + ['name' => 'Accueil', 'url' => '/'], + ['name' => 'Contact', 'url' => '/contact'], + ], + ]); + } +} diff --git a/templates/base.html.twig b/templates/base.html.twig index 1fd4d27..3d29018 100644 --- a/templates/base.html.twig +++ b/templates/base.html.twig @@ -84,7 +84,7 @@
Une question, une demande ? Ecrivez-nous.
+ + {% for message in app.flashes('success') %} +{{ message }}
+{{ message }}
+| Nom | +{{ name }} | +
| Prenom | +{{ surname }} | +
| {{ email }} | +