0.1.28
chat routines
This commit is contained in:
@@ -102,9 +102,21 @@ def support_show_chat_by_ticket_ajax(request):
|
|||||||
|
|
||||||
ticket = MsgGroup.objects.get(id=data['ticket_id'])
|
ticket = MsgGroup.objects.get(id=data['ticket_id'])
|
||||||
|
|
||||||
|
# if request.user.is_staff:
|
||||||
|
if ticket.owner == request.user:
|
||||||
|
cur_user_ticket_side = 'right'
|
||||||
|
else:
|
||||||
|
cur_user_ticket_side = 'left'
|
||||||
|
# else:
|
||||||
|
# if ticket.owner == request.user:
|
||||||
|
# ticket_align_for_cur_user = 'right'
|
||||||
|
# else:
|
||||||
|
# ticket_align_for_cur_user = 'left'
|
||||||
|
|
||||||
Dict = {
|
Dict = {
|
||||||
'ticket': ticket,
|
'ticket': ticket,
|
||||||
'messages': get_messages_for_ticket(ticket)
|
'messages': get_messages_for_ticket(ticket),
|
||||||
|
'cur_user_ticket_side': cur_user_ticket_side
|
||||||
}
|
}
|
||||||
Dict.update(get_ticketsDict_for_staff(request.user))
|
Dict.update(get_ticketsDict_for_staff(request.user))
|
||||||
|
|
||||||
|
|||||||
@@ -38,6 +38,11 @@ class MsgGroup(BaseModel):
|
|||||||
manager = models.ForeignKey(User, verbose_name=_('Менеджер'), related_name='rel_msgGroups_for_manager',
|
manager = models.ForeignKey(User, verbose_name=_('Менеджер'), related_name='rel_msgGroups_for_manager',
|
||||||
on_delete=models.SET_NULL, null=True)
|
on_delete=models.SET_NULL, null=True)
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
verbose_name = _('Тикет')
|
||||||
|
verbose_name_plural = _('Тикеты')
|
||||||
|
|
||||||
|
|
||||||
class Message(BaseModel):
|
class Message(BaseModel):
|
||||||
from AuthApp.models import User
|
from AuthApp.models import User
|
||||||
|
|
||||||
@@ -59,4 +64,7 @@ class Message(BaseModel):
|
|||||||
|
|
||||||
files = models.JSONField(verbose_name='Прикрепленные файлы', default=dict)
|
files = models.JSONField(verbose_name='Прикрепленные файлы', default=dict)
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
verbose_name = _('Сообщение')
|
||||||
|
verbose_name_plural = _('Сообщения')
|
||||||
|
|
||||||
|
|||||||
0
ChatServiceApp/templatetags/__init__.py
Normal file
0
ChatServiceApp/templatetags/__init__.py
Normal file
26
ChatServiceApp/templatetags/tt_chat.py
Normal file
26
ChatServiceApp/templatetags/tt_chat.py
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
from django import template
|
||||||
|
from django.template.defaultfilters import stringfilter
|
||||||
|
|
||||||
|
register = template.Library()
|
||||||
|
|
||||||
|
# from django.core.serializers import serialize
|
||||||
|
# from django.db.models.query import QuerySet
|
||||||
|
# # import simplejson
|
||||||
|
# from django.template import Library
|
||||||
|
# from django.utils.html import mark_safe
|
||||||
|
|
||||||
|
# @register.filter('get_msg_side')
|
||||||
|
@register.simple_tag
|
||||||
|
def get_msg_side(cur_user, ticket, msg):
|
||||||
|
if msg:
|
||||||
|
if msg.sender == cur_user:
|
||||||
|
return 'right'
|
||||||
|
else:
|
||||||
|
return 'left'
|
||||||
|
else:
|
||||||
|
if ticket.owner == cur_user:
|
||||||
|
return 'right'
|
||||||
|
else:
|
||||||
|
return 'left'
|
||||||
|
|
||||||
|
# return 'left'
|
||||||
@@ -1,16 +1,18 @@
|
|||||||
{% load static %}
|
{% load static %}
|
||||||
|
{% load tt_chat %}
|
||||||
|
|
||||||
<div style="width: 100%;">
|
<div style="width: 100%;">
|
||||||
<div class="container-message_support_chat{% if msg.sender == user or ticket.owner != user %} right{% else %} left{% endif %}">
|
<div class="container-message_support_chat {% get_msg_side user ticket msg %}">
|
||||||
<div class="block_avatar_message{% if msg.sender == user or ticket.owner != user %} right{% else %} left{% endif %}">
|
<div class="block_avatar_message {% get_msg_side user ticket msg %}">
|
||||||
<img src="{% static "delete_later/Avatar.png" %}">
|
<img src="{% static "delete_later/Avatar.png" %}">
|
||||||
</div>
|
</div>
|
||||||
<div class="block_text_message{% if msg.sender == user or ticket.owner != user %} left{% else %} right{% endif %}">
|
<div class="block_text_message {% get_msg_side user ticket msg %}">
|
||||||
<div class="container_text_message{% if msg.sender == user or ticket.owner != user %} background{% else %} border{% endif %}">
|
<div class="container_text_message {% get_msg_side user ticket msg %}">
|
||||||
<span class="text_message">
|
<span class="text_message">
|
||||||
{{ text }}
|
{{ text }}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data_send_message{% if msg.sender == user or ticket.owner != user %} right{% else %} left{% endif %}">
|
<div class="data_send_message {% get_msg_side user ticket msg %}">
|
||||||
<span>{{ modifiedDT }}</span>
|
<span>{{ modifiedDT }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user