From 881916afcf96870c52e39da2979ce662a04abc1e Mon Sep 17 00:00:00 2001 From: SDE Date: Wed, 2 Aug 2023 19:34:19 +0300 Subject: [PATCH] 0.1.28 chat routines --- ChatServiceApp/js_views.py | 14 ++++++++++++- ChatServiceApp/models.py | 8 ++++++++ ChatServiceApp/templatetags/__init__.py | 0 ChatServiceApp/templatetags/tt_chat.py | 26 +++++++++++++++++++++++++ templates/widgets/w_message.html | 12 +++++++----- 5 files changed, 54 insertions(+), 6 deletions(-) create mode 100644 ChatServiceApp/templatetags/__init__.py create mode 100644 ChatServiceApp/templatetags/tt_chat.py diff --git a/ChatServiceApp/js_views.py b/ChatServiceApp/js_views.py index 60109b6..50578c5 100644 --- a/ChatServiceApp/js_views.py +++ b/ChatServiceApp/js_views.py @@ -102,9 +102,21 @@ def support_show_chat_by_ticket_ajax(request): 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 = { '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)) diff --git a/ChatServiceApp/models.py b/ChatServiceApp/models.py index be5725d..3748a19 100644 --- a/ChatServiceApp/models.py +++ b/ChatServiceApp/models.py @@ -38,6 +38,11 @@ class MsgGroup(BaseModel): manager = models.ForeignKey(User, verbose_name=_('Менеджер'), related_name='rel_msgGroups_for_manager', on_delete=models.SET_NULL, null=True) + class Meta: + verbose_name = _('Тикет') + verbose_name_plural = _('Тикеты') + + class Message(BaseModel): from AuthApp.models import User @@ -59,4 +64,7 @@ class Message(BaseModel): files = models.JSONField(verbose_name='Прикрепленные файлы', default=dict) + class Meta: + verbose_name = _('Сообщение') + verbose_name_plural = _('Сообщения') diff --git a/ChatServiceApp/templatetags/__init__.py b/ChatServiceApp/templatetags/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/ChatServiceApp/templatetags/tt_chat.py b/ChatServiceApp/templatetags/tt_chat.py new file mode 100644 index 0000000..4c93e8e --- /dev/null +++ b/ChatServiceApp/templatetags/tt_chat.py @@ -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' \ No newline at end of file diff --git a/templates/widgets/w_message.html b/templates/widgets/w_message.html index 33f3338..253ed64 100644 --- a/templates/widgets/w_message.html +++ b/templates/widgets/w_message.html @@ -1,16 +1,18 @@ {% load static %} +{% load tt_chat %} +
-
-
+
+
-
-
+
+
{{ text }}
-
+
{{ modifiedDT }}