diff --git a/typo3/sysext/form/Classes/Domain/Finishers/EmailFinisher.php b/typo3/sysext/form/Classes/Domain/Finishers/EmailFinisher.php index c37424c6b4d4d54ca5e55bb81484be5ee743a6d4..395e6a84f600094aa2473cae1b1ba6196444c50c 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;