collection.findOne(criteria, projection, function (error, guild) { //Sanitize before return if (guild) { var confine = new Confine(); guild.ad = confine.normalize(guild.ad, guildAdSchema); guild.perms = confine.normalize(guild.perms, guildPermsSchema); } callback(error, guild); });
module.exports.upsert = function (user, callback) { //Sanitize json var confine = new Confine(); user = confine.normalize(user, userSchema); //Validation if (user.id == null) { callback(new Error('Field id is required in userModel')); return; } if (user.battleTag == null) { callback(new Error('Field battleTag is required in userModel')); return; } if (user.accessToken == null) { callback(new Error('Field accessToken is required in userModel')); return; } //Upsert var collection = applicationStorage.mongo.collection("users"); collection.update({id: user.id}, user, {upsert: true}, function (error, result) { callback(error, result); }); };
function (callback) { var guild = {}; //Sanitize ad object if (obj.ad) { var confine = new Confine(); guild.ad = confine.normalize(obj.ad, guildAdSchema); } if (obj.bnet) { guild.bnet = obj.bnet; } if (obj.perms) { guild.perms = obj.perms; } if (obj.wowProgress) { guild.wowProgress = obj.wowProgress; } if (obj.progress) { guild.progress = obj.progress; } if (obj.rank) { guild.rank = obj.rank; } //Format value region = region.toLowerCase(); guild.region = region; guild.realm = realm; guild.name = name; guild.updated = new Date().getTime(); //Upsert var collection = applicationStorage.mongo.collection("guilds"); collection.updateOne({ region: region, realm: realm, name: name }, {$set: guild}, {upsert: true}, function (error) { callback(error); }); }