diff --git a/src/cloudron.js b/src/cloudron.js index 6bb3ca6ce..ba22a4567 100644 --- a/src/cloudron.js +++ b/src/cloudron.js @@ -231,6 +231,7 @@ function getCloudronDetails(callback) { function getConfig(callback) { assert.strictEqual(typeof callback, 'function'); + // TODO avoid pyramid of awesomeness with async getCloudronDetails(function (error, result) { if (error) { console.error('Failed to fetch cloudron details.', error); @@ -245,20 +246,24 @@ function getConfig(callback) { settings.getCloudronName(function (error, cloudronName) { if (error) return callback(new CloudronError(CloudronError.INTERNAL_ERROR, error)); - callback(null, { - apiServerOrigin: config.apiServerOrigin(), - webServerOrigin: config.webServerOrigin(), - isDev: config.isDev(), - fqdn: config.fqdn(), - ip: sysinfo.getIp(), - version: config.version(), - update: updateChecker.getUpdateInfo(), - progress: progress.get(), - isCustomDomain: config.isCustomDomain(), - developerMode: config.developerMode(), - region: result.region, - size: result.size, - cloudronName: cloudronName + settings.getDeveloperMode(function (error, developerMode) { + if (error) return callback(new CloudronError(CloudronError.INTERNAL_ERROR, error)); + + callback(null, { + apiServerOrigin: config.apiServerOrigin(), + webServerOrigin: config.webServerOrigin(), + isDev: config.isDev(), + fqdn: config.fqdn(), + ip: sysinfo.getIp(), + version: config.version(), + update: updateChecker.getUpdateInfo(), + progress: progress.get(), + isCustomDomain: config.isCustomDomain(), + developerMode: developerMode, + region: result.region, + size: result.size, + cloudronName: cloudronName + }); }); }); }); @@ -486,7 +491,7 @@ function doUpdate(boxUpdateInfo, callback) { isCustomDomain: config.isCustomDomain(), restoreUrl: null, restoreKey: null, - developerMode: config.developerMode() // this survives updates but not upgrades + developerMode: false // TODO we now use settingsdb to store that, remove later, check argparser.sh!! } }; diff --git a/src/developer.js b/src/developer.js index 0d5a7ff3d..498813d5a 100644 --- a/src/developer.js +++ b/src/developer.js @@ -12,7 +12,7 @@ exports = module.exports = { var assert = require('assert'), tokendb = require('./tokendb.js'), - config = require('./config.js'), + settings = require('./settings.js'), util = require('util'); function DeveloperError(reason, errorOrMessage) { @@ -39,16 +39,20 @@ DeveloperError.INTERNAL_ERROR = 'Internal Error'; function enabled(callback) { assert.strictEqual(typeof callback, 'function'); - callback(null, config.developerMode()); + settings.getDeveloperMode(function (error, enabled) { + if (error) return callback(new DeveloperError(DeveloperError.INTERNAL_ERROR, error)); + callback(null, enabled); + }); } function setEnabled(enabled, callback) { assert.strictEqual(typeof enabled, 'boolean'); assert.strictEqual(typeof callback, 'function'); - config.set('developerMode', enabled); - - callback(null); + settings.setDeveloperMode(enabled, function (error) { + if (error) return callback(new DeveloperError(DeveloperError.INTERNAL_ERROR, error)); + callback(null); + }); } function issueDeveloperToken(user, callback) {