From 5be0aa317551b55a8520e93189b2e9f9066c5a25 Mon Sep 17 00:00:00 2001 From: xiez Date: Tue, 26 Jun 2012 18:09:36 +0800 Subject: [PATCH] Modify group msg notification to make index friendly. --- group/handlers.py | 23 +++++++++++++++-------- group/views.py | 1 + 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/group/handlers.py b/group/handlers.py index 92ad999c4a..c26206a0b6 100644 --- a/group/handlers.py +++ b/group/handlers.py @@ -6,15 +6,22 @@ from seahub.notifications.models import UserNotification def grpmsg_added_cb(sender, **kwargs): group_id = kwargs['group_id'] from_email = kwargs['from_email'] - l = UserNotification.objects.filter(msg_type='group_msg', detail=group_id) - if len(l) == 0: - group_members = ccnet_threaded_rpc.get_group_members(int(group_id)) - for m in group_members: - if from_email == m.user_name: - continue + group_members = ccnet_threaded_rpc.get_group_members(int(group_id)) + for m in group_members: + if from_email == m.user_name: + continue + try: + UserNotification.objects.get(to_user=m.user_name, + msg_type='group_msg', + detail=group_id) + except UserNotification.DoesNotExist: n = UserNotification(to_user=m.user_name, msg_type='group_msg', detail=group_id) n.save() - else: - pass + + + + + + diff --git a/group/views.py b/group/views.py index cf1c43d0c3..59347942af 100644 --- a/group/views.py +++ b/group/views.py @@ -142,6 +142,7 @@ def render_group_info(request, group_id, form): # remove user notifications UserNotification.objects.filter(to_user=request.user.username, + msg_type='group_msg', detail=str(group_id)).delete() """group messages"""