0
@@ -38,8 +38,11 @@ class CmsLanguage extends CmsObject
0
- public static function translate($string, $params = array(), $module = 'core', $current_language = ''
, $default_language = 'en_US')
0
+ public static function translate($string, $params = array(), $module = 'core', $current_language = ''
)
0
+ if ($string == null || $string == '')
0
if (self::$nls == null)
0
self::$nls = CmsCache::get_instance()->call(array('CmsLanguage', 'load_nls_files'));
0
@@ -49,12 +52,7 @@ class CmsLanguage extends CmsObject
0
if (!array_key_exists($module, self::$lang) || !array_key_exists($current_language, self::$lang[$module]))
0
- CmsLanguage::load_lang_file($module, $default_language);
0
- if ($current_language != $default_language)
0
- CmsLanguage::load_lang_file($module, $current_language);
0
+ CmsLanguage::load_lang_file($module, $current_language);
0
@@ -63,19 +61,11 @@ class CmsLanguage extends CmsObject
0
$result = self::$lang[$module][$current_language][$string];
0
- else if ($default_language != $current_language && array_key_exists($string, self::$lang[$module][$default_language]))
0
- $result = self::$lang[$module][$default_language][$string];
0
- else if ($default_language == $current_language && $current_language == 'en_US')
0
- CmsEventOperations::send_event('Core', 'MissingTranslation', array('module' => $module, 'language' => $current_language, 'string' => $string));
0
- $result = "--Add Me - $module - $string --";
0
+ CmsEventOperations::send_event('Core', 'MissingTranslation', array('module' => $module, 'language' => $current_language, 'string' => $string, 'hash' => self::create_bt_hash(debug_backtrace())));
0
if (count($params) > 0)
0
@@ -86,6 +76,20 @@ class CmsLanguage extends CmsObject
0
+ public static function create_bt_hash($backtrace)
0
+ if (count($backtrace) > 1)
0
+ #if (($backtrace[$num]["function"] == '_' || $backtrace[$num]["function"] == '__' || $backtrace[$num]["function"] == 'call_user_func_array') && count($backtrace) > 2)
0
+ #print_r($string, $backtrace[$num]["line"] . basename($backtrace[$num]["file"]) . $backtrace[$num]["function"] . '<br />');
0
+ return md5($backtrace[$num]["line"] . basename($backtrace[$num]["file"]));
0
* Returns a list of all the registered languages in the system. This does not necessarily
0
* mean that the language file actually exists in the system, but it will be tried on all
0
@@ -239,6 +243,9 @@ class CmsLanguage extends CmsObject
0
$current_language = $_COOKIE["cms_language"];
0
+ if ($current_language == '0')
0
+ $current_language = '';
0
if ($current_language == '')
Comments
No one has commented yet.