summaryrefslogtreecommitdiff
path: root/src/node/utils
diff options
context:
space:
mode:
authorPeter 'Pita' Martischka <petermartischka@googlemail.com>2015-04-11 22:01:46 +0100
committerPeter 'Pita' Martischka <petermartischka@googlemail.com>2015-04-11 22:01:46 +0100
commitfc0cac0cad9a3fee5fe1910dd5ee31f0bc05223c (patch)
tree61066aeca70b75a36f2fde6f2b50e1737b95f513 /src/node/utils
parent8ed12c77761dfb3158487c39f4fca5eba5d0bab1 (diff)
downloadetherpad-lite-fc0cac0cad9a3fee5fe1910dd5ee31f0bc05223c.zip
merge object settings into default settings
Diffstat (limited to 'src/node/utils')
-rw-r--r--src/node/utils/Settings.js7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/node/utils/Settings.js b/src/node/utils/Settings.js
index 3886e645..b7d1f0bc 100644
--- a/src/node/utils/Settings.js
+++ b/src/node/utils/Settings.js
@@ -28,6 +28,7 @@ var jsonminify = require("jsonminify");
var log4js = require("log4js");
var randomString = require("./randomstring");
var suppressDisableMsg = " -- To suppress these warning messages change suppressErrorsInPadText to true in your settings.json\n";
+var _ = require("underscore");
/* Root path of the installation */
exports.root = path.normalize(path.join(npm.dir, ".."));
@@ -272,7 +273,11 @@ exports.reloadSettings = function reloadSettings() {
//or it's a settings hash, specific to a plugin
if(exports[i] !== undefined || i.indexOf('ep_')==0)
{
- exports[i] = settings[i];
+ if (_.isObject(settings[i]) && !_.isArray(settings[i])) {
+ exports[i] = _.defaults(settings[i], exports[i]);
+ } else {
+ exports[i] = settings[i];
+ }
}
//this setting is unkown, output a warning and throw it away
else