0.1.27
chat routines
This commit is contained in:
@@ -49,7 +49,7 @@ def support_tickets_ajax(request):
|
||||
tickets = MsgGroup.objects.filter(enable=True, owner=request.user)
|
||||
|
||||
Dict = {
|
||||
'tickets': tickets
|
||||
'tickets': tickets,
|
||||
}
|
||||
tpl_name = 'blocks/profile/b_support_tickets.html'
|
||||
|
||||
|
||||
@@ -53,8 +53,9 @@ class BaseModel(models.Model):
|
||||
|
||||
return self.json_data
|
||||
|
||||
def save(self, *args, **kwargs):
|
||||
self.modifiedDT = datetime.now()
|
||||
def save(self, not_change_modifiedDT=False, *args, **kwargs):
|
||||
if not not_change_modifiedDT:
|
||||
self.modifiedDT = datetime.now()
|
||||
super().save(*args, **kwargs)
|
||||
|
||||
class Meta:
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
from .models import *
|
||||
|
||||
def get_messages_for_ticket(ticket):
|
||||
return ticket.rel_messages_for_group.filter(enable=True).order_by('-modifiedDT')
|
||||
|
||||
|
||||
def get_ticketsDict_for_staff(user):
|
||||
Dict = {
|
||||
'tickets_wo_manager': get_tickets_wo_manager(),
|
||||
|
||||
@@ -50,13 +50,14 @@ def send_msg_ajax(request):
|
||||
kwargs = {
|
||||
'sender': ticket.owner,
|
||||
'receiver': ticket.manager,
|
||||
'text': ticket.text
|
||||
'text': ticket.text,
|
||||
}
|
||||
|
||||
if ticket:
|
||||
kwargs.update({'group': ticket})
|
||||
|
||||
msg = Message.objects.create(**kwargs)
|
||||
Message.objects.filter(id=msg.id).update(modifiedDT=ticket.createDT, createDT=ticket.createDT)
|
||||
# ------------
|
||||
|
||||
kwargs = {
|
||||
@@ -72,8 +73,10 @@ def send_msg_ajax(request):
|
||||
|
||||
|
||||
res_Dict.update({
|
||||
'ticket': ticket
|
||||
'ticket': ticket,
|
||||
'messages': get_messages_for_ticket(ticket)
|
||||
})
|
||||
res_Dict.update(get_ticketsDict_for_staff(request.user))
|
||||
|
||||
tpl_name = 'blocks/profile/b_support_chat.html'
|
||||
|
||||
@@ -97,10 +100,11 @@ def support_show_chat_by_ticket_ajax(request):
|
||||
|
||||
data = json.loads(request.body)
|
||||
|
||||
obj = MsgGroup.objects.get(id=data['ticket_id'])
|
||||
ticket = MsgGroup.objects.get(id=data['ticket_id'])
|
||||
|
||||
Dict = {
|
||||
'ticket': obj
|
||||
'ticket': ticket,
|
||||
'messages': get_messages_for_ticket(ticket)
|
||||
}
|
||||
Dict.update(get_ticketsDict_for_staff(request.user))
|
||||
|
||||
@@ -149,13 +153,14 @@ def create_ticket_ajax(request):
|
||||
html = render_to_string('blocks/profile/b_create_ticket.html', Dict, request=request)
|
||||
return JsonResponse({'html': html}, status=400)
|
||||
|
||||
obj = form.save(commit=False)
|
||||
obj.owner = request.user
|
||||
obj.enable = True
|
||||
obj.save()
|
||||
ticket = form.save(commit=False)
|
||||
ticket.owner = request.user
|
||||
ticket.enable = True
|
||||
ticket.save()
|
||||
|
||||
Dict = {
|
||||
'ticket': obj
|
||||
'ticket': ticket,
|
||||
'messages': get_messages_for_ticket(ticket)
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -29,12 +29,12 @@
|
||||
{% endif %}
|
||||
|
||||
<div class="container-messages">
|
||||
{% if not ticket.rel_messages_for_group.all %}
|
||||
{% if not messages %}
|
||||
{% with text=ticket.text modifiedDT=ticket.modifiedDT %}
|
||||
{% include "widgets/w_message.html" %}
|
||||
{% endwith %}
|
||||
{% else %}
|
||||
{% for msg in ticket.rel_messages_for_group.all %}
|
||||
{% for msg in messages %}
|
||||
{% with text=msg.text modifiedDT=msg.modifiedDT %}
|
||||
{% include "widgets/w_message.html" %}
|
||||
{% endwith %}
|
||||
|
||||
Reference in New Issue
Block a user