1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-06-29 08:27:55 +00:00
seahub/group/handlers.py
2012-07-24 14:00:27 +08:00

41 lines
1.5 KiB
Python

from seaserv import ccnet_threaded_rpc
from signals import grpmsg_added
from models import GroupMessage
from seahub.notifications.models import UserNotification
def grpmsg_added_cb(sender, **kwargs):
group_id = kwargs['group_id']
from_email = kwargs['from_email']
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()
def grpmsg_reply_added_cb(sender, **kwargs):
msg_id = kwargs['msg_id']
reply_from_email = kwargs['from_email'] # this value may be used in future
try:
group_msg = GroupMessage.objects.get(id=msg_id)
except GroupMessage.DoesNotExist:
pass
try:
UserNotification.objects.get(to_user=group_msg.from_email,
msg_type='grpmsg_reply',
detail=msg_id)
except UserNotification.DoesNotExist:
n = UserNotification(to_user=group_msg.from_email,
msg_type='grpmsg_reply',
detail=msg_id)
n.save()