From 30af95c6a28251fa8fed1e7c9f9c8fa9bad157b7 Mon Sep 17 00:00:00 2001 From: Gerrit Mohrmann <code.mailfach@abwesend.de> Date: Fri, 19 Aug 2022 19:39:45 +0200 Subject: [PATCH] [BUGFIX] Allow EmailFinisher recipients override with TypoScript again Resolves: #98178 Releases: main, 12.4, 11.5 Change-Id: I6ebcbb67b9cc51d7d56b1da945fdd8b05d5081dc Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/79868 Tested-by: core-ci <typo3@b13.com> Reviewed-by: Benni Mack <benni@typo3.org> Tested-by: Benni Mack <benni@typo3.org> --- .../form/Classes/Domain/Finishers/EmailFinisher.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/typo3/sysext/form/Classes/Domain/Finishers/EmailFinisher.php b/typo3/sysext/form/Classes/Domain/Finishers/EmailFinisher.php index c37424c6b4d4..395e6a84f600 100644 --- a/typo3/sysext/form/Classes/Domain/Finishers/EmailFinisher.php +++ b/typo3/sysext/form/Classes/Domain/Finishers/EmailFinisher.php @@ -22,6 +22,7 @@ use Symfony\Component\Mime\Address; use TYPO3\CMS\Core\Mail\FluidEmail; use TYPO3\CMS\Core\Mail\MailerInterface; use TYPO3\CMS\Core\Utility\GeneralUtility; +use TYPO3\CMS\Core\Utility\MathUtility; use TYPO3\CMS\Extbase\Domain\Model\FileReference; use TYPO3\CMS\Fluid\View\TemplatePaths; use TYPO3\CMS\Form\Domain\Finishers\Exception\FinisherException; @@ -239,6 +240,17 @@ class EmailFinisher extends AbstractFinisher $addresses = []; foreach ($recipients as $address => $name) { + // The if is needed to set address and name with TypoScript + if (MathUtility::canBeInterpretedAsInteger($address)) { + if (is_array($name)) { + $address = $name[0] ?? ''; + $name = $name[1] ?? ''; + } else { + $address = $name; + $name = ''; + } + } + if (!GeneralUtility::validEmail($address)) { // Drop entries without valid address continue; -- GitLab