From 643dfa74ca73ebbd2b41b680baffb55f50c83330 Mon Sep 17 00:00:00 2001
From: Stefan Galinski <stefan@sgalinski.de>
Date: Thu, 13 Sep 2018 02:27:30 +0200
Subject: [PATCH] [BUGFIX] Remove useless marker fields from the forms finisher

---
 Classes/Finisher/Forms/FormsFinisher.php | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/Classes/Finisher/Forms/FormsFinisher.php b/Classes/Finisher/Forms/FormsFinisher.php
index 1a912ce7..d29c69ec 100644
--- a/Classes/Finisher/Forms/FormsFinisher.php
+++ b/Classes/Finisher/Forms/FormsFinisher.php
@@ -36,6 +36,14 @@ use TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher;
  * This finisher sends an email via sg_mail after form submission and enables customization of mail markers
  */
 class FormsFinisher extends AbstractFinisher {
+	/**
+	 * This contains type names of fields we dont care about in sgmail
+	 *
+	 * @var array
+	 */
+	const IGNORE_FIELDS = [
+		'Honeypot', 'Hidden'
+	];
 
 	/**
 	 *
@@ -68,9 +76,14 @@ class FormsFinisher extends AbstractFinisher {
 		foreach ($formValues as $identifier => $value) {
 			$formElement = $formDefinition->getElementByIdentifier($identifier);
 			if (!$formElement) {
-				$markers[$identifier] = $value;
 				continue;
 			}
+
+			$type = $formElement->getType();
+			if (\in_array($type, self::IGNORE_FIELDS, TRUE)) {
+				continue;
+			}
+
 			$formElemenProperties = $formElement->getProperties();
 			if (isset($formElemenProperties['markerName']) && \trim($formElemenProperties['markerName']) !== '') {
 				$markers[\trim($formElemenProperties['markerName'])] = $value;
-- 
GitLab