mirror of
https://github.com/node-red/node-red.git
synced 2025-03-01 10:36:34 +00:00
Move locale files under api/runtime components
This commit is contained in:
@@ -20,19 +20,9 @@ var path = require("path");
|
||||
var fs = require("fs");
|
||||
|
||||
var defaultLang = "en-US";
|
||||
var supportedLangs = [];
|
||||
|
||||
var resourceMap = {
|
||||
"runtime": {
|
||||
basedir: path.resolve(__dirname+"/../../locales"),
|
||||
file:"runtime.json"
|
||||
},
|
||||
"editor": {
|
||||
basedir: path.resolve(__dirname+"/../../locales"),
|
||||
file: "editor.json"
|
||||
}
|
||||
}
|
||||
var resourceCache = {}
|
||||
var resourceMap = {};
|
||||
var resourceCache = {};
|
||||
|
||||
function registerMessageCatalog(namespace,dir,file) {
|
||||
return when.promise(function(resolve,reject) {
|
||||
@@ -43,19 +33,6 @@ function registerMessageCatalog(namespace,dir,file) {
|
||||
});
|
||||
}
|
||||
|
||||
var initSupportedLangs = function() {
|
||||
return when.promise(function(resolve,reject) {
|
||||
fs.readdir(resourceMap.editor.basedir, function(err,files) {
|
||||
if(err) {
|
||||
reject(err);
|
||||
} else {
|
||||
supportedLangs = files;
|
||||
resolve();
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function mergeCatalog(fallback,catalog) {
|
||||
for (var k in fallback) {
|
||||
if (fallback.hasOwnProperty(k)) {
|
||||
@@ -102,21 +79,17 @@ function init() {
|
||||
i18n.backend(MessageFileLoader);
|
||||
i18n.init({
|
||||
ns: {
|
||||
namespaces: ["runtime","editor"],
|
||||
namespaces: [],
|
||||
defaultNs: "runtime"
|
||||
},
|
||||
fallbackLng: ['en-US']
|
||||
fallbackLng: [defaultLang]
|
||||
},function() {
|
||||
initSupportedLangs().then(function() {
|
||||
resolve();
|
||||
});
|
||||
resolve();
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function getCatalog(namespace,lang) {
|
||||
//console.log("+",namespace,lang);
|
||||
//console.log(resourceCache[namespace][lang]);
|
||||
var result = null;
|
||||
if (resourceCache.hasOwnProperty(namespace)) {
|
||||
result = resourceCache[namespace][lang];
|
||||
@@ -130,32 +103,15 @@ function getCatalog(namespace,lang) {
|
||||
}
|
||||
}
|
||||
}
|
||||
//console.log(result);
|
||||
return result;
|
||||
}
|
||||
|
||||
function determineLangFromHeaders(acceptedLanguages){
|
||||
var lang = "en-US";
|
||||
acceptedLanguages = acceptedLanguages || [];
|
||||
for (var i=0;i<acceptedLanguages.length;i++){
|
||||
if (supportedLangs.indexOf(acceptedLanguages[i]) !== -1){
|
||||
lang = acceptedLanguages[i];
|
||||
break;
|
||||
// check the language without the country code
|
||||
} else if (supportedLangs.indexOf(acceptedLanguages[i].split("-")[0]) !== -1) {
|
||||
lang = acceptedLanguages[i].split("-")[0];
|
||||
break;
|
||||
}
|
||||
}
|
||||
return lang;
|
||||
}
|
||||
|
||||
var obj = module.exports = {
|
||||
init: init,
|
||||
registerMessageCatalog: registerMessageCatalog,
|
||||
catalog: getCatalog,
|
||||
i: i18n,
|
||||
determineLangFromHeaders: determineLangFromHeaders
|
||||
defaultLang:defaultLang
|
||||
}
|
||||
|
||||
obj['_'] = function() {
|
||||
|
Reference in New Issue
Block a user