deblan.io-murph/src/Controller/ContactController.php

48 lines
1.4 KiB
PHP
Raw Normal View History

<?php
namespace App\Controller;
use App\Core\Controller\Site\PageController;
2021-03-29 14:33:46 +02:00
use App\Core\Notification\MailNotifier;
2021-03-30 13:40:46 +02:00
use App\Form\ContactType;
2021-03-29 14:33:46 +02:00
use Symfony\Component\HttpFoundation\Request;
2021-03-30 13:40:46 +02:00
use Symfony\Component\HttpFoundation\Response;
class ContactController extends PageController
{
2021-03-29 14:33:46 +02:00
public function contact(MailNotifier $notifier, Request $request): Response
{
2021-03-29 14:33:46 +02:00
$form = $this->createForm(ContactType::class);
$showForm = true;
if ($request->isMethod('POST')) {
$form->handleRequest($request);
if ($form->isValid()) {
$showForm = false;
$data = $form->getData();
$notifier
2021-03-31 19:21:50 +02:00
->setFrom('subscription@deblan.fr')
2021-03-29 14:33:46 +02:00
->addRecipient('simon@deblan.fr')
->setSubject('[Deblan] Nouveau message')
->setReplyTo($data['email'])
->notify('mail/contact.html.twig', [
'message' => $data,
2021-03-30 13:40:46 +02:00
], 'text/plain')
;
2021-03-29 14:33:46 +02:00
$this->addFlash(
'success',
'Votre message a bien été envoyé.'
);
}
}
return $this->defaultRender($this->siteRequest->getPage()->getTemplate(), [
2021-03-29 14:33:46 +02:00
'form' => $form->createView(),
'showForm' => $showForm,
]);
}
}