From 2081985b22a52a1220639fb4e0c3cbc192da9f99 Mon Sep 17 00:00:00 2001
From: Torsten Oppermann <torsten@sgalinski.de>
Date: Mon, 11 Sep 2017 10:47:09 +0200
Subject: [PATCH] [TASK] Fixing a language bug with backend filters and default
 language when sending

---
 Classes/Service/BackendService.php      | 5 +++--
 Classes/Service/MailTemplateService.php | 4 ++--
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/Classes/Service/BackendService.php b/Classes/Service/BackendService.php
index c95b3494..82aa19bf 100644
--- a/Classes/Service/BackendService.php
+++ b/Classes/Service/BackendService.php
@@ -183,9 +183,9 @@ class BackendService {
 		$languages = [];
 
 		// adding default language
-		$languages[] = ['isocode' => LocalizationUtility::translate(
+		$languages[] = ['isocode' => MailTemplateService::DEFAULT_LANGUAGE, 'name' => LocalizationUtility::translate(
 			'backend.language_default', 'SgMail'
-		), 'name' => LocalizationUtility::translate('backend.language_default', 'SgMail')];
+		)];
 
 		foreach ($rows as $language) {
 			$languages[] = ['isocode' => $language['language_isocode'],
@@ -220,6 +220,7 @@ class BackendService {
 	 */
 	public static function getLanguagesForFilter() {
 		$languages = self::getLanguages();
+		array_unshift($languages, ['isocode' => '', 'name' => '']);
 
 		$filterLanguages = [];
 		if (count($languages) > 0) {
diff --git a/Classes/Service/MailTemplateService.php b/Classes/Service/MailTemplateService.php
index 0c23b6a0..062877f9 100644
--- a/Classes/Service/MailTemplateService.php
+++ b/Classes/Service/MailTemplateService.php
@@ -48,6 +48,7 @@ class MailTemplateService {
 	const MARKER_TYPE_STRING = 'String';
 	const MARKER_TYPE_ARRAY = 'Array';
 	const MARKER_TYPE_OBJECT = 'Object';
+	const DEFAULT_LANGUAGE = 'default';
 
 	/**
 	 * @var array $registerArray
@@ -304,7 +305,6 @@ class MailTemplateService {
 	 * @throws \TYPO3\CMS\Extbase\Persistence\Exception\IllegalObjectTypeException
 	 */
 	public function sendEmail($isPreview = FALSE) {
-
 		if (TYPO3_MODE === 'FE') {
 			/** @var TypoScriptFrontendController $tsfe */
 			$tsfe = $GLOBALS['TSFE'];
@@ -438,7 +438,7 @@ class MailTemplateService {
 	 */
 	private function addMailToMailQueue(
 		$extensionKey, $templateName, $subject, $emailBody, $priority, $sendingTime = 0,
-		$lastSendingTime = 0, $language = 'en', $pid = 0
+		$lastSendingTime = 0, $language = self::DEFAULT_LANGUAGE, $pid = 0
 	) {
 		$mail = $this->objectManager->get(Mail::class);
 		$mail->setPid($pid);
-- 
GitLab