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

[TASK] Fixing a bug with template defaults / fallback

parent 077139a4
No related branches found
No related tags found
1 merge request!3New version 4 1
......@@ -96,13 +96,35 @@ class MailController extends ActionController {
}
$languages = BackendService::getLanguages();
$templates = BackendService::getSelectedTemplates(
$templatesFromDb = BackendService::getSelectedTemplates(
$parameters['selectedExtension'], $parameters['selectedTemplate'], $languages,
$pid
);
// if no templates are in the db, get the default from the files
$templates = [];
foreach ($templatesFromDb as $key => $template) {
if ($template === NULL) {
$defaultTemplatePath = $registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['templatePath'];
$defaultTemplateFile = $defaultTemplatePath . $key . '.' . 'template.html';
$fallbackTemplateFile = $defaultTemplatePath . 'en.' . 'template.html';
$templateFromFile = new Template();
$templateFromFile->setLanguage($key);
$templates[$key] = $templateFromFile;
if (file_exists($defaultTemplateFile)) {
$templateFromFile->setContent(file_get_contents($defaultTemplateFile));
} else {
$templateFromFile->setContent(file_get_contents($fallbackTemplateFile));
}
} else {
$templates[$key] = $template;
}
}
// calculating optimal column width for the view
$colspace = 3;
$colspace = 4;
$templateCount = count($templates);
if ($templateCount % 2 === 0 && $templateCount <= 4) {
$colspace = 6;
......@@ -114,42 +136,16 @@ class MailController extends ActionController {
$this->view->assign('languageTemplates', $templates);
$this->view->assign('templates', MailTemplateService::getRegisterArray());
$subject = $registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['subject'];
if (is_array($subject)) {
// $this->view->assign(
// 'subjectLeft', $selectedTemplates['left'] !== NULL ? $selectedTemplates['left']->getSubject() :
// $registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['subject'][$selectedLanguages['left']]
// );
//
// $this->view->assign(
// 'subjectRight', $selectedTemplates['right'] !== NULL ? $selectedTemplates['right']->getSubject() :
// $registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['subject'][$selectedLanguages['right']]
// );
// } else {
// $translatedSubjects = BackendService::getTranslatedTemplateSubject(
// $subject, $parameters['selectedExtension'], $selectedLanguages
// );
//
// $this->view->assign(
// 'subjectLeft', $selectedTemplates['left'] !== NULL ? $selectedTemplates['left']->getSubject() :
// $translatedSubjects['left']
// );
//
// $this->view->assign(
// 'subjectRight', $selectedTemplates['right'] !== NULL ? $selectedTemplates['right']->getSubject() :
// $translatedSubjects['right']
// );
}
$templateDescription = $registerArray[$parameters['selectedExtension']][$parameters['selectedTemplate']]['description'];
// if (is_array($templateDescription)) {
// $templateDescription = $templateDescription[$selectedLanguages['left']];
// } else {
// $templateDescription = LocalizationUtility::translate(
// $templateDescription, $parameters['selectedExtension']
// );
// }
if (is_array($templateDescription)) {
if ($languages[0]) {
$templateDescription = $templateDescription[$languages[0]];
}
} else {
$templateDescription = LocalizationUtility::translate(
$templateDescription, $parameters['selectedExtension']
);
}
// create doc header component
$pageUid = (int) GeneralUtility::_GP('id');
......
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