0.1.48
chat routines
This commit is contained in:
@@ -71,7 +71,9 @@ def update_chat_ajax(request):
|
||||
last_message_modifiedDT = datetime.strptime(data['last_message_modifiedDT'], '%d.%m.%Y %H:%M:%S:%f')
|
||||
|
||||
sender = User.objects.get(id=data['sender'])
|
||||
receiver = User.objects.get(id=data['receiver'])
|
||||
receiver = None
|
||||
if 'receiver' in data and data['receiver']:
|
||||
receiver = User.objects.get(id=data['receiver'])
|
||||
|
||||
if ticket:
|
||||
|
||||
@@ -83,12 +85,11 @@ def update_chat_ajax(request):
|
||||
else:
|
||||
msgs = get_msgs_for_chat_w_users(sender, receiver)
|
||||
|
||||
if last_message_modifiedDT:
|
||||
if not msgs or msgs[0].modifiedDT <= last_message_modifiedDT:
|
||||
Dict.update({
|
||||
'msgs_count': len(msgs)
|
||||
})
|
||||
return JsonResponse(Dict, status=200)
|
||||
if (not msgs and not last_message_modifiedDT) or (msgs and last_message_modifiedDT and msgs[0].modifiedDT <= last_message_modifiedDT):
|
||||
Dict.update({
|
||||
'msgs_count': len(msgs)
|
||||
})
|
||||
return JsonResponse(Dict, status=200)
|
||||
|
||||
|
||||
res_Dict.update({
|
||||
@@ -222,9 +223,24 @@ def support_show_chat_by_ticket_ajax(request):
|
||||
|
||||
ticket = MsgGroup.objects.get(id=data['ticket_id'])
|
||||
|
||||
msgs = get_messages_for_ticket(ticket)
|
||||
|
||||
new_msg_allow = False
|
||||
cur_receiver = None
|
||||
if request.user.is_staff:
|
||||
cur_receiver = ticket.owner
|
||||
new_msg_allow = True
|
||||
else:
|
||||
if ticket.manager:
|
||||
cur_receiver = ticket.manager
|
||||
# if len(msgs) > 1:
|
||||
new_msg_allow = True
|
||||
|
||||
Dict = {
|
||||
'ticket': ticket,
|
||||
'messages': get_messages_for_ticket(ticket),
|
||||
'messages': msgs,
|
||||
'cur_receiver': cur_receiver,
|
||||
'new_msg_allow': new_msg_allow
|
||||
}
|
||||
Dict.update(get_ticketsDict_for_staff(request.user))
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
</div>
|
||||
|
||||
|
||||
<div class="footer-chat{% if user.is_staff or ticket.manager %} hide{% endif %}">
|
||||
<div class="footer-chat{% if not new_msg_allow %} hide{% endif %}">
|
||||
<div class="left-part-block-enter-message">
|
||||
<input class="enter-message-inp" onkeypress="sendMessageEnter(event,{{ ticket.id }},{{ user.id }},{{ ticket.owner.id }})" placeholder="Отправить сообщение">
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user