Skip to content

Commit aac679b

Browse files
authored
Merge pull request #589 from melihkorkmaz/user-level-settings
Fixed user level config bug.
2 parents 28923b3 + 16cef4b commit aac679b

File tree

1 file changed

+15
-9
lines changed

1 file changed

+15
-9
lines changed

plugins/pluginManager.js

+15-9
Original file line numberDiff line numberDiff line change
@@ -198,15 +198,21 @@ var pluginManager = function pluginManager(){
198198
};
199199

200200
this.updateUserConfigs = function(db, changes, user_id, callback){
201-
var update = {}
202-
for (var k in changes) {
203-
update[k] = {};
204-
_.extend(update[k], configs[k], changes[k]);
205-
}
206-
db.collection("members").update({_id:db.ObjectID(user_id)}, {$set:flattenObject(update, "settings")}, {upsert:true}, function(err, res){
207-
if(callback)
208-
callback();
209-
});
201+
db.collection("members").findOne({ _id: db.ObjectID(user_id) }, function (err, member) {
202+
var update = {}
203+
for (var k in changes) {
204+
update[k] = {};
205+
_.extend(update[k], configs[k], changes[k]);
206+
207+
if (member.settings && member.settings[k]) {
208+
_.extend(update[k], member.settings[k], changes[k])
209+
}
210+
}
211+
db.collection("members").update({ _id: db.ObjectID(user_id) }, { $set: flattenObject(update, "settings") }, { upsert: true }, function (err, res) {
212+
if (callback)
213+
callback();
214+
});
215+
})
210216
};
211217

212218
this.extendModule = function(name, object){

0 commit comments

Comments
 (0)