<?php
namespace JF\JuridicusBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\EmailType;
use Symfony\Component\Form\Extension\Core\Type\TextareaType;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
use Symfony\Component\HttpFoundation\Request;
/**
* Preise controller.
*
*/
class KontaktController extends AbstractController
{
/**
* @Route("/contact", name="contact")
*/
public function indexAction(Request $request)
{
$success = false;
$form = $this->createFormBuilder()
->add('name', TextType::class,[
'required' => true,
'label' => false,
'attr' => array(
'placeholder' => 'Mein Name'
)
])
->add('email', EmailType::class,[
'required' => true,
'label' => false,
'attr' => array(
'placeholder' => 'Deine E-Mail'
)
])
->add('message', TextareaType::class,[
'required' => true,
'label' => false,
'attr' => array(
'placeholder' => 'Deine Nachricht'
)
])
->add('send', SubmitType::class, [
'label' => "Einreichen",
'attr'=> [
'class'=>'btn btn-danger'
]
])
->getForm();
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
// data is an array with "name", "email", and "message" keys
$data = $form->getData();
$emailBody = "Neue Kontaktanfrage: ".PHP_EOL."
Name: $data[name] ".PHP_EOL."
Email: $data[email] ".PHP_EOL."
Nachricht: $data[message] ".PHP_EOL."
";
$mailer_user = $this->container->getParameter('mailer_user');
$mailer = $this->get('mailer');
$message = \Swift_Message::newInstance()
->setSubject("Juridicus: Kontaktanfrage")
->setFrom(array($mailer_user => 'Juridicus'))
->setReplyTo('info@juridicus.de')
->setTo("info@juridicus.de")
->setBody($emailBody, 'text/plain')
;
if ($mailer->send($message)) {
$success = true;
}
}
// ... render the form
return $this->render("@JFJuridicusBundle/Kontakt/index.html.twig", array(
'form' => $form->createView(),
'success' => $success
)
);
}
}