From 504386c71743abfdf0e794f74fe4b47307442ec1 Mon Sep 17 00:00:00 2001 From: Philipp Dieter Date: Thu, 12 Nov 2020 00:15:26 +0100 Subject: [PATCH] [TASK] Improve mail template handling --- Classes/Utility/MailUtility.php | 27 +++++++++++++++---- .../Private/Partials/Mails/DefaultHtml.html | 1 + .../{Mailing => Mails}/DefaultHtml.html | 0 .../{Mailing => Mails}/DefaultText.html | 0 4 files changed, 23 insertions(+), 5 deletions(-) create mode 100644 Resources/Private/Partials/Mails/DefaultHtml.html rename Resources/Private/Templates/{Mailing => Mails}/DefaultHtml.html (100%) rename Resources/Private/Templates/{Mailing => Mails}/DefaultText.html (100%) diff --git a/Classes/Utility/MailUtility.php b/Classes/Utility/MailUtility.php index e666996..552d028 100644 --- a/Classes/Utility/MailUtility.php +++ b/Classes/Utility/MailUtility.php @@ -19,6 +19,7 @@ use TYPO3\CMS\Extbase\Object\ObjectManager; use TYPO3\CMS\Extbase\Service\ImageService; use TYPO3\CMS\Fluid\View\StandaloneView; use TYPO3\CMS\Fluid\View\TemplatePaths; +use TYPO3\CMS\Extbase\Configuration\ConfigurationManagerInterface; /** * @@ -49,15 +50,31 @@ class MailUtility $templateRootPaths = $templatePaths->getTemplateRootPaths(); } if (!$templateNameHtml) { - $templateNameHtml = 'Mailing/DefaultHtml'; + $templateNameHtml = 'Mails/DefaultHtml'; } if (!$templateNameText) { - $templateNameText = 'Mailing/DefaultText'; + $templateNameText = 'Mails/DefaultText'; } - $htmlView = GeneralUtility::makeInstance(StandaloneView::class); + $objectManager = GeneralUtility::makeInstance(ObjectManager::class); + $configurationManager = $objectManager->get( + ConfigurationManagerInterface::class + ); + $typoScript = $configurationManager->getConfiguration( + ConfigurationManagerInterface::CONFIGURATION_TYPE_FULL_TYPOSCRIPT + ); + $settings = + (array)$typoScript['module.']['tx_templatesaide.']['settings.']; + $settings = GeneralUtility::removeDotsFromTS($settings); + $htmlView = $objectManager->get(StandaloneView::class); + $htmlView->getTemplatePaths()->fillDefaultsByPackageName( + 'templates_aide' + ); $htmlView->setTemplateRootPaths($templateRootPaths); $htmlView->setTemplate($templateNameHtml); - $textView = GeneralUtility::makeInstance(StandaloneView::class); + $textView = $objectManager->get(StandaloneView::class); + $textView->getTemplatePaths()->fillDefaultsByPackageName( + 'templates_aide' + ); $textView->setTemplateRootPaths($templateRootPaths); $textView->setTemplate($templateNameText); $mail = GeneralUtility::makeInstance(MailMessage::class); @@ -172,7 +189,7 @@ class MailUtility } $textView->assign('content', $bodydataText); $htmlView->assign('content', $bodydataHtml); - $domain = GeneralUtility::locationHeaderUrl('/'); + $domain = $settings['mailDomain']; $htmlView->assign('domain', $domain); $textBody = $textView->render(); $htmlBody = $htmlView->render(); diff --git a/Resources/Private/Partials/Mails/DefaultHtml.html b/Resources/Private/Partials/Mails/DefaultHtml.html new file mode 100644 index 0000000..710a843 --- /dev/null +++ b/Resources/Private/Partials/Mails/DefaultHtml.html @@ -0,0 +1 @@ +

included content

diff --git a/Resources/Private/Templates/Mailing/DefaultHtml.html b/Resources/Private/Templates/Mails/DefaultHtml.html similarity index 100% rename from Resources/Private/Templates/Mailing/DefaultHtml.html rename to Resources/Private/Templates/Mails/DefaultHtml.html diff --git a/Resources/Private/Templates/Mailing/DefaultText.html b/Resources/Private/Templates/Mails/DefaultText.html similarity index 100% rename from Resources/Private/Templates/Mailing/DefaultText.html rename to Resources/Private/Templates/Mails/DefaultText.html