From 96bbac37c59c4e03d6a47907bd83574d287ccd66 Mon Sep 17 00:00:00 2001 From: Torsten Oppermann <torsten@sgalinski.de> Date: Thu, 17 Aug 2017 11:28:37 +0200 Subject: [PATCH] [TASK] Add Mailservice function to get the system languages --- Classes/Service/MailTemplateService.php | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/Classes/Service/MailTemplateService.php b/Classes/Service/MailTemplateService.php index 722d26f5..534dab7c 100644 --- a/Classes/Service/MailTemplateService.php +++ b/Classes/Service/MailTemplateService.php @@ -33,10 +33,12 @@ use SGalinski\SgMail\Domain\Repository\MailRepository; use SGalinski\SgMail\Domain\Repository\TemplateRepository; use Swift_Attachment; use Swift_OutputByteStream; +use TYPO3\CMS\Core\Database\DatabaseConnection; use TYPO3\CMS\Core\Mail\MailMessage; use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Extbase\Object\ObjectManager; use TYPO3\CMS\Extbase\Persistence\Generic\PersistenceManager; +use TYPO3\CMS\Extbase\Persistence\QueryResultInterface; use TYPO3\CMS\Extbase\Utility\LocalizationUtility; use TYPO3\CMS\Fluid\View\StandaloneView; use TYPO3\CMS\Frontend\Controller\TypoScriptFrontendController; @@ -714,4 +716,23 @@ class MailTemplateService { $this->pid = (int) $pid; return $this; } + + /** + * Get all the active system languages in an array + * + * @return array + * @throws \InvalidArgumentException + */ + public static function getSystemLanguages() { + /** @var $databaseConnection DatabaseConnection */ + $databaseConnection = $GLOBALS['TYPO3_DB']; + /** @var QueryResultInterface $rows */ + $rows = $databaseConnection->exec_SELECTgetRows( + '*', + 'sys_language', + 'deleted = 0 AND hidden = 1' + ); + + return $rows->toArray(); + } } -- GitLab