Enable multi-language for site title and subtitle

This commit is contained in:
Kijin Sung 2016-05-08 21:49:11 +09:00
parent e90f60de22
commit d87bbf635c
4 changed files with 32 additions and 13 deletions

View file

@ -875,9 +875,11 @@ class Context
*/ */
public static function getBrowserTitle() public static function getBrowserTitle()
{ {
$oModuleController = getController('module'); if (!self::$_instance->site_title)
$oModuleController->replaceDefinedLangCode(self::$_instance->site_title); {
return '';
}
getController('module')->replaceDefinedLangCode(self::$_instance->site_title);
return htmlspecialchars(self::$_instance->site_title, ENT_COMPAT | ENT_HTML401, 'UTF-8', FALSE); return htmlspecialchars(self::$_instance->site_title, ENT_COMPAT | ENT_HTML401, 'UTF-8', FALSE);
} }
@ -889,7 +891,16 @@ class Context
public static function getSiteTitle() public static function getSiteTitle()
{ {
$moduleConfig = getModel('module')->getModuleConfig('module'); $moduleConfig = getModel('module')->getModuleConfig('module');
return isset($moduleConfig->siteTitle) ? trim($moduleConfig->siteTitle) : ''; if (isset($moduleConfig->siteTitle))
{
$title = trim($moduleConfig->siteTitle);
getController('module')->replaceDefinedLangCode($title);
return $title;
}
else
{
return '';
}
} }
/** /**
@ -900,7 +911,16 @@ class Context
public static function getSiteSubtitle() public static function getSiteSubtitle()
{ {
$moduleConfig = getModel('module')->getModuleConfig('module'); $moduleConfig = getModel('module')->getModuleConfig('module');
return isset($moduleConfig->siteSubtitle) ? trim($moduleConfig->siteSubtitle) : ''; if (isset($moduleConfig->siteSubtitle))
{
$subtitle = trim($moduleConfig->siteSubtitle);
getController('module')->replaceDefinedLangCode($subtitle);
return $subtitle;
}
else
{
return '';
}
} }
/** /**

View file

@ -773,8 +773,7 @@ class ModuleHandler extends Handler
} }
if($module_config->siteTitle) if($module_config->siteTitle)
{ {
$siteTitle = Context::getBrowserTitle(); if(!Context::getBrowserTitle())
if(!$siteTitle)
{ {
Context::setBrowserTitle($module_config->siteTitle); Context::setBrowserTitle($module_config->siteTitle);
} }

View file

@ -203,7 +203,7 @@ class adminAdminView extends admin
$gnbTitleInfo->adminTitle = $objConfig->adminTitle ? $objConfig->adminTitle : 'Admin'; $gnbTitleInfo->adminTitle = $objConfig->adminTitle ? $objConfig->adminTitle : 'Admin';
$gnbTitleInfo->adminLogo = $objConfig->adminLogo ? $objConfig->adminLogo : ''; $gnbTitleInfo->adminLogo = $objConfig->adminLogo ? $objConfig->adminLogo : '';
$browserTitle = ($subMenuTitle ? $subMenuTitle : 'Dashboard') . ' - ' . $gnbTitleInfo->adminTitle; $browserTitle = $gnbTitleInfo->adminTitle . ' - ' . ($subMenuTitle ? $subMenuTitle : 'Dashboard');
// Get list of favorite // Get list of favorite
$oAdminAdminModel = getAdminModel('admin'); $oAdminAdminModel = getAdminModel('admin');
@ -255,7 +255,7 @@ class adminAdminView extends admin
Context::set('gnbUrlList', $menu->list); Context::set('gnbUrlList', $menu->list);
Context::set('parentSrl', $parentSrl); Context::set('parentSrl', $parentSrl);
Context::set('gnb_title_info', $gnbTitleInfo); Context::set('gnb_title_info', $gnbTitleInfo);
Context::setBrowserTitle($browserTitle); Context::addBrowserTitle($browserTitle);
} }
/** /**
@ -416,8 +416,8 @@ class adminAdminView extends admin
// Site title and HTML footer // Site title and HTML footer
$oModuleModel = getModel('module'); $oModuleModel = getModel('module');
$config = $oModuleModel->getModuleConfig('module'); $config = $oModuleModel->getModuleConfig('module');
Context::set('site_title', escape($config->siteTitle)); Context::set('var_site_title', escape($config->siteTitle));
Context::set('site_subtitle', escape($config->siteSubtitle)); Context::set('var_site_subtitle', escape($config->siteSubtitle));
Context::set('all_html_footer', escape($config->htmlFooter)); Context::set('all_html_footer', escape($config->htmlFooter));
// Index module // Index module

View file

@ -13,13 +13,13 @@
<div class="x_control-group"> <div class="x_control-group">
<label class="x_control-label">{$lang->site_title}</label> <label class="x_control-label">{$lang->site_title}</label>
<div class="x_controls"> <div class="x_controls">
<input type="text" name="site_title" value="{$site_title}" /> <input type="text" name="site_title" value="{$var_site_title}" class="lang_code" />
</div> </div>
</div> </div>
<div class="x_control-group"> <div class="x_control-group">
<label class="x_control-label">{$lang->site_subtitle}</label> <label class="x_control-label">{$lang->site_subtitle}</label>
<div class="x_controls"> <div class="x_controls">
<input type="text" name="site_subtitle" value="{$site_subtitle}" /> <input type="text" name="site_subtitle" value="{$var_site_subtitle}" class="lang_code" />
</div> </div>
</div> </div>
<div class="x_control-group"> <div class="x_control-group">