Merge pull request #3907 from Alys/notifHiding

allow notifications icon to go grey when all messages have been seen - fixes https://github.com/HabitRPG/habitrpg/issues/3270
This commit is contained in:
Tyler Renelle 2014-08-23 16:09:56 -06:00
commit 494e7eeff4
3 changed files with 16 additions and 3 deletions

View file

@ -0,0 +1,13 @@
db.users.find({}).forEach(function(user){
var newNewMessages = {};
for(var key in user.newMessages) {
var val = user.newMessages[key];
// print("\n" + key + " " + val);
if(key != "undefined" && val['value']){
newNewMessages[key] = val;
}
}
db.users.update({_id: user._id}, {$set: {'newMessages': newNewMessages}});
});

View file

@ -47,7 +47,7 @@ angular.module('groupServices', ['ngResource']).
// On enter, set chat message to "seen"
seenMessage: function(gid){
$http.post('/api/v2/groups/'+gid+'/chat/seen');
if (User.user.newMessages) User.user.newMessages[gid] = false;
if (User.user.newMessages) delete User.user.newMessages[gid];
},
// Pass reference to party, myGuilds, publicGuilds, tavern; inside data in order to

View file

@ -257,8 +257,8 @@ api.seenMessage = function(req,res,next){
// Skip the auth step, we want this to be fast. If !found with uuid/token, then it just doesn't save
// Check for req.params.gid to exist
if(req.params.gid){
var update = {$set:{}};
update['$set']['newMessages.'+req.params.gid+'.value'] = false;
var update = {$unset:{}};
update['$unset']['newMessages.'+req.params.gid] = '';
User.update({_id:req.headers['x-api-user'], apiToken:req.headers['x-api-key']},update).exec();
}
res.send(200);