Newer
Older
<?php
namespace SGalinski\SgMail\Controller;
/***************************************************************
* Copyright notice
*
* (c) sgalinski Internet Services (https://www.sgalinski.de)
*
* All rights reserved
*
* This script is part of the TYPO3 project. The TYPO3 project is
* free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
* The GNU General Public License can be found at
* http://www.gnu.org/copyleft/gpl.html.
*
* This script is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* This copyright notice MUST APPEAR in all copies of the script!
***************************************************************/

Torsten Oppermann
committed
use SGalinski\SgMail\Service\MailTemplateService;
use TYPO3\CMS\Extbase\Mvc\Controller\ActionController;
/**
* Controller for the mail templating service module
*/
class MailController extends ActionController {

Torsten Oppermann
committed
/**
* @var \TYPO3\CMS\Lang\Domain\Repository\LanguageRepository
* @inject
*/
protected $languageRepository = NULL;
/**
*
*/
public function indexAction() {

Torsten Oppermann
committed
$activatedLanguages = $this->languageRepository->findSelected();
$languages = ['en'];
foreach ($activatedLanguages as $language) {
$languages[] = $language->getLocale();
}
$this->view->assign('languages', $languages);

Torsten Oppermann
committed
$this->view->assign('templates', MailTemplateService::getRegisterArray());
if ($this->request->hasArgument('selectedTemplate')
&& !$this->request->hasArgument('selectedLanguageLeft')
&& !$this->request->hasArgument('selectedLanguageRight')) {

Torsten Oppermann
committed
$registerArray = MailTemplateService::getRegisterArray();

Torsten Oppermann
committed
$selectedExtensionArg = $this->request->getArgument('selectedExtension');
$selectedTemplateArg = $this->request->getArgument('selectedTemplate');
$selectedTemplate = $registerArray[$selectedExtensionArg][$selectedTemplateArg];

Torsten Oppermann
committed
$this->view->assign('selectedTemplate', $selectedTemplate);
$this->view->assign('selectedTemplateKey', (int) $selectedTemplateArg);

Torsten Oppermann
committed
$this->view->assign('selectedExtensionKey', $selectedExtensionArg);
} elseif (!$this->request->hasArgument('selectedLanguageLeft')
&& !$this->request->hasArgument('selectedLanguageRight')) {

Torsten Oppermann
committed
reset(MailTemplateService::getRegisterArray());

Torsten Oppermann
committed
$firstEntry = key(MailTemplateService::getRegisterArray());

Torsten Oppermann
committed
$this->view->assign('selectedTemplate', MailTemplateService::getRegisterArray()[$firstEntry][0]);
$this->view->assign('selectedTemplateKey', (int) $firstEntry);

Torsten Oppermann
committed
$this->view->assign('selectedExtensionKey', $firstEntry);

Torsten Oppermann
committed
}
if ($this->request->hasArgument('selectedLanguageLeft')
&& $this->request->hasArgument('selectedLanguageRight')
&& $this->request->hasArgument('selectedTemplate')
&& $this->request->hasArgument('selectedExtensionKey')) {
$this->view->assign('selectedLanguageLeft', $this->request->getArgument('selectedLanguageLeft'));
$this->view->assign('selectedLanguageRight', $this->request->getArgument('selectedLanguageRight'));
$this->view->assign('selectedTemplate', $this->request->getArgument('selectedTemplate'));
$this->view->assign('selectedTemplateKey', $this->request->getArgument('selectedTemplateKey'));
$this->view->assign('selectedExtensionKey', (int) $this->request->getArgument('selectedExtensionKey'));

Torsten Oppermann
committed
} else {
$this->view->assign('selectedLanguageLeft', 'en');
$this->view->assign('selectedLanguageRight', 'en');

Torsten Oppermann
committed
}

Torsten Oppermann
committed