Cache node locales by language

This commit is contained in:
Nick O'Leary 2018-09-28 16:58:06 +01:00
parent ef114e31c2
commit d6211af5bd
No known key found for this signature in database
GPG Key ID: 4F2157149161A6C9
1 changed files with 10 additions and 10 deletions

View File

@ -24,7 +24,7 @@ var events;
var settings; var settings;
var loader; var loader;
var nodeConfigCache = null; var nodeConfigCache = {};
var moduleConfigs = {}; var moduleConfigs = {};
var nodeList = []; var nodeList = [];
var nodeConstructors = {}; var nodeConstructors = {};
@ -39,7 +39,7 @@ function init(_settings,_loader, _events) {
nodeTypeToId = {}; nodeTypeToId = {};
nodeConstructors = {}; nodeConstructors = {};
nodeList = []; nodeList = [];
nodeConfigCache = null; nodeConfigCache = {};
} }
function load() { function load() {
@ -210,7 +210,7 @@ function addModule(module) {
if (module.examples) { if (module.examples) {
library.addExamplesDir(module.name,module.examples.path); library.addExamplesDir(module.name,module.examples.path);
} }
nodeConfigCache = null; nodeConfigCache = {};
} }
@ -233,7 +233,7 @@ function removeNode(id) {
}); });
config.enabled = false; config.enabled = false;
config.loaded = false; config.loaded = false;
nodeConfigCache = null; nodeConfigCache = {};
return filterNodeInfo(config); return filterNodeInfo(config);
} }
@ -389,7 +389,7 @@ function registerNodeConstructor(nodeSet,type,constructor) {
} }
function getAllNodeConfigs(lang) { function getAllNodeConfigs(lang) {
if (!nodeConfigCache) { if (!nodeConfigCache[lang]) {
var result = ""; var result = "";
var script = ""; var script = "";
for (var i=0;i<nodeList.length;i++) { for (var i=0;i<nodeList.length;i++) {
@ -407,9 +407,9 @@ function getAllNodeConfigs(lang) {
// result += UglifyJS.minify(script, {fromString: true}).code; // result += UglifyJS.minify(script, {fromString: true}).code;
// result += '</script>'; // result += '</script>';
//} //}
nodeConfigCache = result; nodeConfigCache[lang] = result;
} }
return nodeConfigCache; return nodeConfigCache[lang];
} }
function getNodeConfig(id,lang) { function getNodeConfig(id,lang) {
@ -448,7 +448,7 @@ function getNodeConstructor(type) {
} }
function clear() { function clear() {
nodeConfigCache = null; nodeConfigCache = {};
moduleConfigs = {}; moduleConfigs = {};
nodeList = []; nodeList = [];
nodeConstructors = {}; nodeConstructors = {};
@ -477,7 +477,7 @@ function enableNodeSet(typeOrId) {
config = moduleConfigs[getModule(id)].nodes[getNode(id)]; config = moduleConfigs[getModule(id)].nodes[getNode(id)];
delete config.err; delete config.err;
config.enabled = true; config.enabled = true;
nodeConfigCache = null; nodeConfigCache = {};
settings.enableNodeSettings(config.types); settings.enableNodeSettings(config.types);
return saveNodeList().then(function() { return saveNodeList().then(function() {
return filterNodeInfo(config); return filterNodeInfo(config);
@ -500,7 +500,7 @@ function disableNodeSet(typeOrId) {
config = moduleConfigs[getModule(id)].nodes[getNode(id)]; config = moduleConfigs[getModule(id)].nodes[getNode(id)];
// TODO: persist setting // TODO: persist setting
config.enabled = false; config.enabled = false;
nodeConfigCache = null; nodeConfigCache = {};
settings.disableNodeSettings(config.types); settings.disableNodeSettings(config.types);
return saveNodeList().then(function() { return saveNodeList().then(function() {
return filterNodeInfo(config); return filterNodeInfo(config);