Skip to content
Snippets Groups Projects
Commit ceb5b748 authored by Torsten Oppermann's avatar Torsten Oppermann
Browse files

Merge branch 'feature_security_update' of gitlab.sgalinski.de:typo3/sg_mail...

Merge branch 'feature_security_update' of gitlab.sgalinski.de:typo3/sg_mail into feature_security_update
parents e451beeb 355573a2
No related branches found
No related tags found
1 merge request!11Feature security update
...@@ -85,27 +85,28 @@ class SendMailCommandController extends CommandController { ...@@ -85,27 +85,28 @@ class SendMailCommandController extends CommandController {
$mailMessage->setFrom($fromAddress, $mailToSend->getFromName()); $mailMessage->setFrom($fromAddress, $mailToSend->getFromName());
$mailMessage->setTo($toAddresses); $mailMessage->setTo($toAddresses);
$mailMessage->setSubject($mailSubject); $mailMessage->setSubject($mailSubject);
if (count($ccAddresses)) { if (\count($ccAddresses)) {
$mailMessage->setCc($ccAddresses); $mailMessage->setCc($ccAddresses);
} }
if (count($bccAddresses)) {
if (\count($bccAddresses)) {
$mailMessage->setBcc($bccAddresses); $mailMessage->setBcc($bccAddresses);
} }
$mailMessage->setBody($mailBody, 'text/html'); $mailMessage->setBody($mailBody, 'text/html');
$plaintextService = GeneralUtility::makeInstance(PlaintextService::class); $plaintextService = GeneralUtility::makeInstance(PlaintextService::class);
$plaintextBody = $plaintextService->makePlain($mailBody); $plaintextBody = $plaintextService->makePlain($mailBody);
$mailMessage->addPart($plaintextBody, 'text/plain'); $mailMessage->addPart($plaintextBody, 'text/plain');
$attachments = $mailToSend->getAttachments(); $attachments = $mailToSend->getAttachments();
if ($attachments->count() > 0) { if ($attachments->count() > 0) {
foreach ($attachments as $attachment) { foreach ($attachments as $attachment) {
/** /**
* @var FileReference $attachment * @var FileReference $attachment
*/ */
$file = $attachment->getOriginalResource()->getOriginalFile(); $file = $attachment->getOriginalResource()->getOriginalFile();
$mailMessage->attach( $mailMessage->attach(
\Swift_Attachment::newInstance($file->getContents(), $file->getName(), $file->getMimeType()) \Swift_Attachment::newInstance($file->getContents(), $file->getName(), $file->getMimeType())
); );
} }
} }
......
...@@ -157,7 +157,6 @@ class MailController extends ActionController { ...@@ -157,7 +157,6 @@ class MailController extends ActionController {
foreach ($templatesFromDb as $key => $template) { foreach ($templatesFromDb as $key => $template) {
if ($template === NULL) { if ($template === NULL) {
$defaultTemplatePath = $registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['templatePath']; $defaultTemplatePath = $registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['templatePath'];
$defaultTemplateFile = $defaultTemplatePath . $key . '.' . 'template.html';
$fallbackTemplateFile = $defaultTemplatePath . 'template.html'; $fallbackTemplateFile = $defaultTemplatePath . 'template.html';
$templateFromFile = new Template(); $templateFromFile = new Template();
...@@ -177,10 +176,8 @@ class MailController extends ActionController { ...@@ -177,10 +176,8 @@ class MailController extends ActionController {
$subject = $registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['subject']; $subject = $registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['subject'];
if ($registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['templateContent']) { if ($registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['templateContent']) {
$templateFromFile->setContent($registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['templateContent']); $templateFromFile->setContent($registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['templateContent']);
} else { } elseif (file_exists($fallbackTemplateFile)) {
if (file_exists($fallbackTemplateFile)) { $templateFromFile->setContent(file_get_contents($fallbackTemplateFile));
$templateFromFile->setContent(file_get_contents($fallbackTemplateFile));
}
} }
} else { } else {
$templates[$key] = $template; $templates[$key] = $template;
......
...@@ -186,8 +186,6 @@ class QueueController extends ActionController { ...@@ -186,8 +186,6 @@ class QueueController extends ActionController {
* Download the queue data as a csv file, respecting the filter settings * Download the queue data as a csv file, respecting the filter settings
* *
* @param array $filters * @param array $filters
* @throws \TYPO3\CMS\Extbase\Mvc\Exception\StopActionException
* @throws \TYPO3\CMS\Extbase\Mvc\Exception\UnsupportedRequestTypeException
* @throws \TYPO3\CMS\Extbase\Persistence\Exception\InvalidQueryException * @throws \TYPO3\CMS\Extbase\Persistence\Exception\InvalidQueryException
* @throws \InvalidArgumentException * @throws \InvalidArgumentException
*/ */
...@@ -197,7 +195,7 @@ class QueueController extends ActionController { ...@@ -197,7 +195,7 @@ class QueueController extends ActionController {
header('Content-Type: application/force-download'); header('Content-Type: application/force-download');
header('Content-Transfer-Encoding: Binary'); header('Content-Transfer-Encoding: Binary');
header('Content-Disposition: attachment; filename="export.csv"'); header('Content-Disposition: attachment; filename="export.csv"');
header('Content-Length: ' . strlen($exportString)); header('Content-Length: ' . \strlen($exportString));
echo $exportString; echo $exportString;
exit(0); exit(0);
} }
......
...@@ -58,7 +58,7 @@ abstract class AbstractRepository extends Repository { ...@@ -58,7 +58,7 @@ abstract class AbstractRepository extends Repository {
* @param bool $ignoreEnableFields * @param bool $ignoreEnableFields
* @return string * @return string
*/ */
protected function getEnableFieldsStatement($table, $alias = '', $ignoreEnableFields = FALSE) { protected function getEnableFieldsStatement($table, $alias = '', $ignoreEnableFields = FALSE): string {
if (TYPO3_MODE === 'FE' && $GLOBALS['TSFE'] instanceof TypoScriptFrontendController) { if (TYPO3_MODE === 'FE' && $GLOBALS['TSFE'] instanceof TypoScriptFrontendController) {
/** @var PageRepository $pageRepository */ /** @var PageRepository $pageRepository */
$pageRepository = $GLOBALS['TSFE']->sys_page; $pageRepository = $GLOBALS['TSFE']->sys_page;
......
...@@ -90,12 +90,10 @@ class MailRepository extends AbstractRepository { ...@@ -90,12 +90,10 @@ class MailRepository extends AbstractRepository {
foreach (BackendService::getLanguages() as $lang) { foreach (BackendService::getLanguages() as $lang) {
$constraintsAnd[] = $query->logicalNot($query->equals('language', $lang['isocode'])); $constraintsAnd[] = $query->logicalNot($query->equals('language', $lang['isocode']));
} }
} else { } elseif ($filters['filterLanguage'] && $filters['filterLanguage'] !== 0
if ($filters['filterLanguage'] && $filters['filterLanguage'] !== 0 && $filters['filterLanguage'] !== '0' && $filters['filterLanguage'] !== ''
&& $filters['filterLanguage'] !== '0' && $filters['filterLanguage'] !== '' ) {
) { $constraintsAnd[] = $query->equals('language', $filters['filterLanguage']);
$constraintsAnd[] = $query->equals('language', $filters['filterLanguage']);
}
} }
$constraintsOr = []; $constraintsOr = [];
......
...@@ -26,7 +26,6 @@ namespace SGalinski\SgMail\Domain\Repository; ...@@ -26,7 +26,6 @@ namespace SGalinski\SgMail\Domain\Repository;
* This copyright notice MUST APPEAR in all copies of the script! * This copyright notice MUST APPEAR in all copies of the script!
***************************************************************/ ***************************************************************/
use SGalinski\SgMail\Domain\Model\Template;
use TYPO3\CMS\Core\Database\DatabaseConnection; use TYPO3\CMS\Core\Database\DatabaseConnection;
use TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings; use TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings;
......
...@@ -67,4 +67,3 @@ if (!isset($TYPO3_CONF_VARS['SYS']['caching']['cacheConfigurations'][$cacheName] ...@@ -67,4 +67,3 @@ if (!isset($TYPO3_CONF_VARS['SYS']['caching']['cacheConfigurations'][$cacheName]
'citypower' 'citypower'
]; ];
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment