diff --git a/Classes/EventListener/LuxSendMailSendNewsletterBeforeMailMessageEvent.php b/Classes/EventListener/LuxSendMailSendNewsletterBeforeMailMessageEvent.php new file mode 100644 index 0000000..35e1aab --- /dev/null +++ b/Classes/EventListener/LuxSendMailSendNewsletterBeforeMailMessageEvent.php @@ -0,0 +1,82 @@ +getMailMessage(); + if (is_a($message, MailMessage::class)) { + $prefixSubject = $this->redirectService->getSubjectPrefix(); + + if ($prefixSubject !== '') { + $message->setSubject($prefixSubject . ' ' . $message->getSubject()); + } + + if ($this->redirectService->isEnabled()) { + $originalRecipients = array_keys($event->getReceiver()); + $originalRecipientsCopy = $this->redirectService->symfonyToAdress($message->getCc()); + + $receiver = $this->redirectService->getRecipientsRaw(); + $message->setTo($receiver); + + $message->html( + sprintf( + '%s
To : %s', + $message->getHtmlBody(), + implode(';', $originalRecipients) + ) + ); + $message->text( + sprintf( + '%s%sTo : %s', + $message->getTextBody(), + chr(10), + implode(';', $originalRecipients) + ) + ); + } + + if ($this->redirectService->isCopyEnabled()) { + $message->html( + sprintf( + '%s
Cc : %s', + $message->getHtmlBody(), + implode(';', $originalRecipientsCopy) + ) + ); + $message->text( + sprintf( + '%s%sCc : %s', + $message->getTextBody(), + chr(10), + implode(';', $originalRecipientsCopy) + ) + ); + $message->cc(...$this->redirectService->getRecipientsForCopy()); + } + } + } +} \ No newline at end of file diff --git a/Configuration/Services.yaml b/Configuration/Services.yaml index ea27146..385a413 100644 --- a/Configuration/Services.yaml +++ b/Configuration/Services.yaml @@ -12,3 +12,9 @@ services: - name: event.listener identifier: "ameos/mailredirect/beforemailersentmessage" event: TYPO3\CMS\Core\Mail\Event\BeforeMailerSentMessageEvent + + Ameos\AmeosMailredirect\EventListener\LuxSendMailSendNewsletterBeforeMailMessageEvent: + tags: + - name: event.listener + identifier: "ameos/mailredirect/luxsendmailsendnewsletterbeforeMailmessageevent" + event: In2code\Luxletter\Events\SendMailSendNewsletterBeforeMailMessageEvent \ No newline at end of file diff --git a/ext_emconf.php b/ext_emconf.php index 48afb36..8022c41 100755 --- a/ext_emconf.php +++ b/ext_emconf.php @@ -19,7 +19,7 @@ 'clearCacheOnLoad' => 0, 'lockType' => '', 'author_company' => 'Ameos', - 'version' => '3.0.0', + 'version' => '3.1.0', 'constraints' => [ 'depends' => [ 'typo3' => '12.4.0-12.4.99',