diff --git a/website/src/libs/firebase.js b/website/src/libs/firebase.js new file mode 100644 index 0000000000..6d9c05697f --- /dev/null +++ b/website/src/libs/firebase.js @@ -0,0 +1,16 @@ +var Firebase = require('firebase'); +var nconf = require('nconf'); +var isProd = nconf.get('NODE_ENV') === 'production'; +var firebaseRef; +var firebaseConfig = nconf.get('FIREBASE'); + +// Setup +if(isProd || true){ + firebaseRef = new Firebase('https://' + firebaseConfig.APP + '.firebaseio.com'); + + firebaseRef.on('value', function(snapshot){ + console.log(snapshot.val()); + }); +} + +var api = module.exports = {}; \ No newline at end of file diff --git a/website/src/models/group.js b/website/src/models/group.js index 9c0f75fd91..2ddbcf5d92 100644 --- a/website/src/models/group.js +++ b/website/src/models/group.js @@ -413,14 +413,13 @@ GroupSchema.methods.leave = function(user, keep, mainCb){ }, cb); }else{ // otherwise just remove a member var update = {$pull: {members: user._id}}; - + if (group.type == 'party' && group.quest.key){ update['$unset'] = {}; update['$unset']['quest.members.' + user._id] = 1; } var seniorMember = _.find(group.members, function (m) {return m != user._id}); - // If the leader is leaving (or if the leader previously left, and this wasn't accounted for) var leader = group.leader; if (leader == user._id || !~group.members.indexOf(leader)) {