diff --git a/trunk/app/Resources/views/default/pages/contact.html.twig b/trunk/app/Resources/views/default/pages/contact.html.twig index a439fdfe..d7a5ff71 100644 --- a/trunk/app/Resources/views/default/pages/contact.html.twig +++ b/trunk/app/Resources/views/default/pages/contact.html.twig @@ -12,11 +12,18 @@ werden uns dann umgehend bei Ihnen melden. Ihre Daten (Name, Telefonnummer etc.) werden ausschließlich zur Bearbeitung Ihrer Anfrage verwendet und nicht an Dritte weitergegeben.

- +
+ {% if re_error != "" %} +
+ {{ re_error }} +
+
+ {% endif %} +

Reisedaten

@@ -108,6 +115,18 @@
+ {% if re_error != "" %} +
+ {{ re_error }} +
+
+ {% endif %} + +
+ +
+
+
diff --git a/trunk/src/AppBundle/Controller/DefaultController.php b/trunk/src/AppBundle/Controller/DefaultController.php index 385e4587..377f1fb9 100644 --- a/trunk/src/AppBundle/Controller/DefaultController.php +++ b/trunk/src/AppBundle/Controller/DefaultController.php @@ -291,11 +291,33 @@ class DefaultController extends Controller $form = $this->createForm(ContactRequestType::class); $breadcrumbEntries = [new BreadcrumbEntry('Kontaktformular')]; + + + $re_error = ""; if ($request->getMethod() == 'POST') { + $error = false; + + if(empty($request->get('g-recaptcha-response'))){ + $re_error = 'Bitte lösen Sie das reCAPTCHA.'; + $error = true; + } + //your site secret key + $secret = '6LfjBm8UAAAAANKNzGhSiMaoEg9mUswlaZkOHgI4'; + //get verify response data + $verifyResponse = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret='.$secret.'&response='.$request->get('g-recaptcha-response')); + $responseData = json_decode($verifyResponse); + + + if($responseData->success != true ){ + $re_error = 'Bitte lösen Sie das reCAPTCHA'; + $error = true; + } + + $form->handleRequest($request); - if ($form->isValid()) + if ($form->isValid() && !$error) { /** @var ContactRequest $contactRequest */ $contactRequest = $form->getData(); @@ -336,6 +358,7 @@ class DefaultController extends Controller 'base_dir' => realpath($this->getParameter('kernel.root_dir').'/..').DIRECTORY_SEPARATOR, 'breadcrumb_entries' => $breadcrumbEntries, 'contact_form' => $form->createView(), + 're_error' => $re_error, ]); }