예제 #1
0
 /**
  * @ignore
  */
 private static function _load_nls()
 {
     if (!is_array(self::$_nls)) {
         self::$_nls = array();
         $config = cmsms()->GetConfig();
         $nlsdir = cms_join_path($config['root_path'], 'lib', 'nls');
         $langdir = cms_join_path($config['root_path'], $config['admin_dir'], 'lang');
         $files = glob($nlsdir . '/*nls.php');
         if (is_array($files) && count($files)) {
             for ($i = 0; $i < count($files); $i++) {
                 if (!is_file($files[$i])) {
                     continue;
                 }
                 $fn = basename($files[$i]);
                 $tlang = substr($fn, 0, strpos($fn, '.'));
                 if ($tlang != 'en_US' && !file_exists(cms_join_path($langdir, 'ext', $tlang, 'admin.inc.php'))) {
                     continue;
                 }
                 unset($nls);
                 include $files[$i];
                 if (isset($nls)) {
                     $obj = CmsNls::from_array($nls);
                     unset($nls);
                     self::$_nls[$obj->key()] = $obj;
                 }
             }
         }
     }
 }