diff --git a/lib/client/config.js b/lib/client/config.js index b30bf5db..8efa37ea 100644 --- a/lib/client/config.js +++ b/lib/client/config.js @@ -73,6 +73,10 @@ var CloudCmd, Util, DOM, io; Config.save = save; }); + socket.on('config', function(config) { + DOM.Files.set('config', config); + }); + socket.on('message', function(data) { onSave(data); }); diff --git a/lib/client/files.js b/lib/client/files.js index e67820d0..3dfc18ab 100644 --- a/lib/client/files.js +++ b/lib/client/files.js @@ -138,17 +138,20 @@ } function getConfig(callback) { - var promise, - RESTful = DOM.RESTful; + var RESTful = DOM.RESTful; - promise = new Promise(function(resolve) { - RESTful.Config.read(resolve); - }); + if (!Promises.config) + Promises.config = new Promise(function(resolve) { + RESTful.Config.read(resolve); + }); - promise.then(function(data) { - setConfig(data); + Promises.config.then(function(data) { + if (!Data.config) { + Data.config = data; + setConfig(data); + } - callback(null, data); + callback(null, Data.config); }); } diff --git a/lib/server/config.js b/lib/server/config.js index b026ee9c..5254af63 100644 --- a/lib/server/config.js +++ b/lib/server/config.js @@ -77,6 +77,8 @@ sock.of('/config') .on('connection', function(socket) { + socket.emit('config', config); + socket.on('message', function(json) { var data, is = Util.type.object(json);