diff --git a/website/src/controllers/groups.js b/website/src/controllers/groups.js index b9d2643c61..df39432304 100644 --- a/website/src/controllers/groups.js +++ b/website/src/controllers/groups.js @@ -837,7 +837,11 @@ questStart = function(req, res, next) { parallel.push(function(cb2){ User.update({_id:m},updates,cb2); }); - }) + + User.findOne({_id: m}, {pushDevices: 1}, function(err, user){ + pushNotify.sendNotify(user, "HabitRPG", shared.i18n.t('questStarted') + ": "+ quest.text() ); + }); + }); group.quest.active = true; if (quest.boss) { @@ -913,10 +917,6 @@ api.questAccept = function(req, res, next) { group.quest.leader = user._id; } else { group.quest.members[m] = undefined; - - User.findById(m, function(err,groupMember){ - pushNotify.sendNotify(groupMember, shared.i18n.t('questInvitationTitle'), shared.i18n.t('questInvitationInfo', { quest: quest.text() })); - }); } }); @@ -924,7 +924,7 @@ api.questAccept = function(req, res, next) { _id: { $in: _.without(group.members, user._id) } - }, {auth: 1, preferences: 1, profile: 1}, function(err, members){ + }, {auth: 1, preferences: 1, profile: 1, pushDevices: 1}, function(err, members){ if(err) return next(err); var inviterVars = utils.getUserInfo(user, ['name', 'email']); @@ -940,6 +940,10 @@ api.questAccept = function(req, res, next) { {name: 'PARTY_URL', content: '/#/options/groups/party'} ]); + _.each(members, function(groupMember){ + pushNotify.sendNotify(groupMember, shared.i18n.t('questInvitationTitle'), shared.i18n.t('questInvitationInfo', { quest: quest.text() })); + }); + questStart(req,res,next); });