diff --git a/core/lib/Thelia/Controller/Admin/TranslationsController.php b/core/lib/Thelia/Controller/Admin/TranslationsController.php index b8cffdcd0..e7953c74b 100644 --- a/core/lib/Thelia/Controller/Admin/TranslationsController.php +++ b/core/lib/Thelia/Controller/Admin/TranslationsController.php @@ -40,6 +40,7 @@ class TranslationsController extends BaseAdminController ); } + protected function getModuleTemplateNames(Module $module, $template_type) { $templates = TemplateHelper::getInstance()->getList( @@ -119,16 +120,16 @@ class TranslationsController extends BaseAdminController else { throw new \InvalidArgumentException("Undefined module template type: '$type'."); } - $walkMode = TemplateHelper::WALK_MODE_TEMPLATE; + $walkMode = TemplateHelper::WALK_MODE_TEMPLATE; } // List front and back office templates defined by this module $templateArguments['back_office_templates'] = - $this->getModuleTemplateNames($module, TemplateDefinition::BACK_OFFICE); + implode(',', $this->getModuleTemplateNames($module, TemplateDefinition::BACK_OFFICE)); $templateArguments['front_office_templates'] = - $this->getModuleTemplateNames($module, TemplateDefinition::FRONT_OFFICE); + implode(',', $this->getModuleTemplateNames($module, TemplateDefinition::FRONT_OFFICE)); break; diff --git a/core/lib/Thelia/Core/Template/TemplateHelper.php b/core/lib/Thelia/Core/Template/TemplateHelper.php index ae0ff27c1..d7eae0313 100644 --- a/core/lib/Thelia/Core/Template/TemplateHelper.php +++ b/core/lib/Thelia/Core/Template/TemplateHelper.php @@ -116,6 +116,7 @@ class TemplateHelper // Every subdir of the basedir is supposed to be a template. $di = new \DirectoryIterator($baseDir); + /** @var \DirectoryIterator $file */ foreach ($di as $file) { // Ignore 'dot' elements if ($file->isDot() || ! $file->isDir()) continue; @@ -169,7 +170,7 @@ class TemplateHelper $num_texts = 0; if ($walkMode == self::WALK_MODE_PHP) { - $prefix = '\-\>[\s]*trans[\s]*\('; + $prefix = '\-\>[\s]*trans[\s]*\([\s]*'; $allowed_exts = array('php'); } elseif ($walkMode == self::WALK_MODE_TEMPLATE) { diff --git a/templates/backOffice/default/translations.html b/templates/backOffice/default/translations.html index 9e64b08d6..10e6cc92d 100644 --- a/templates/backOffice/default/translations.html +++ b/templates/backOffice/default/translations.html @@ -60,7 +60,7 @@ @@ -129,14 +129,21 @@ - {foreach $back_office_templates as $template} - {$option_value = "bo.{$template}"} - - {/foreach} - {foreach $front_office_templates as $template} - {$option_value = "fo.{$template}"} - - {/foreach} + + {if $back_office_templates != ''} + {foreach explode(',', $back_office_templates) as $template} + {$option_value = "bo.{$template}"} + + {/foreach} + {/if} + + {if $front_office_templates != ''} + {foreach explode(',', $front_office_templates) as $template} + {$option_value = "fo.{$template}"} + + {/foreach} + {/if} +