diff options
author | Gerrit Uitslag <klapinklapin@gmail.com> | 2014-09-28 13:27:05 +0200 |
---|---|---|
committer | Gerrit Uitslag <klapinklapin@gmail.com> | 2014-09-28 13:27:05 +0200 |
commit | dd7a6159c4224a6a3dda22a1f35f5fb13b06ec2e (patch) | |
tree | fb334e50ccb72a0398fe7f0711c50bb5a9c0de54 /inc/template.php | |
parent | 89417bb7bf90154b2a5c17e0717028f7a7d9797f (diff) | |
download | rpg-dd7a6159c4224a6a3dda22a1f35f5fb13b06ec2e.tar.gz rpg-dd7a6159c4224a6a3dda22a1f35f5fb13b06ec2e.tar.bz2 |
use config cascade for loading of localizations
Diffstat (limited to 'inc/template.php')
-rw-r--r-- | inc/template.php | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/inc/template.php b/inc/template.php index f8ec637b3..15854282e 100644 --- a/inc/template.php +++ b/inc/template.php @@ -1277,15 +1277,28 @@ function tpl_getLang($id) { static $lang = array(); if(count($lang) === 0) { - $path = tpl_incdir().'lang/'; + global $conf, $config_cascade; // definitely don't invoke "global $lang" + + $path = tpl_incdir() . 'lang/'; $lang = array(); - global $conf; // definitely don't invoke "global $lang" // don't include once - @include($path.'en/lang.php'); - if($conf['lang'] != 'en') @include($path.$conf['lang'].'/lang.php'); - @include(DOKU_CONF.'template_lang/'.$conf['template'].'/'.$conf['lang'].'/lang.php'); + @include($path . 'en/lang.php'); + foreach($config_cascade['lang']['template'] as $config_file) { + if(@file_exists($config_file . $conf['template'] . '/en/lang.php')) { + include($config_file . $conf['template'] . '/en/lang.php'); + } + } + + if($conf['lang'] != 'en') { + @include($path . $conf['lang'] . '/lang.php'); + foreach($config_cascade['lang']['template'] as $config_file) { + if(@file_exists($config_file . $conf['template'] . '/' . $conf['lang'] . '/lang.php')) { + include($config_file . $conf['template'] . '/' . $conf['lang'] . '/lang.php'); + } + } + } } return $lang[$id]; } |