diff --git a/ChatServiceApp/js_views.py b/ChatServiceApp/js_views.py index d30badf..e7a17f6 100644 --- a/ChatServiceApp/js_views.py +++ b/ChatServiceApp/js_views.py @@ -94,9 +94,11 @@ def update_chat_ajax(request): # получаем правую панель с получателями receivers, unread_msgs_count = get_chat_receivers_for_user(request.user, receiver) - saved_unread_msgs_count = request.user.user_profile.get_node_by_name('receivers_unread_msgs_count') - if saved_unread_msgs_count == None or saved_unread_msgs_count != unread_msgs_count: - request.user.user_profile.add_node_to_json_data({'receivers_unread_msgs_count': unread_msgs_count}, save=True) + receivers_unread_msgs_count = sorted([{'id':item.id, 'unread_msgs_count': item.unread_msgs_count} for item in receivers], key=lambda d: d['id']) + saved_receivers_unread_msgs_count = request.user.user_profile.get_node_by_name('receivers_unread_msgs_count') + if saved_receivers_unread_msgs_count == None or receivers_unread_msgs_count != saved_receivers_unread_msgs_count: + request.user.user_profile.add_node_to_json_data( + {'receivers_unread_msgs_count': receivers_unread_msgs_count}, save=True) # if unread_msgs_count: required_beep = True @@ -109,7 +111,7 @@ def update_chat_ajax(request): }) # если есть получатель - получаем сообщения чата - if receiver: + if receiver == request.user: msgs = get_msgs_for_chat_w_users(sender, receiver) unreaded_msgs = msgs.filter(status='sended') if msgs and unreaded_msgs: