0.7.31
files in chat messages
This commit is contained in:
@@ -35,7 +35,6 @@ def get_update_chat_Dict(data):
|
||||
|
||||
tpl_name = 'blocks/profile/b_messages_container.html'
|
||||
|
||||
|
||||
if 'ticket_id' in data and data['ticket_id'] and data['ticket_id'] != 'null':
|
||||
ticket = MsgGroup.objects.get(id=data['ticket_id'])
|
||||
res_Dict.update({'ticket': ticket.id})
|
||||
@@ -115,11 +114,12 @@ def send_msg(data):
|
||||
try:
|
||||
if type(data) == str:
|
||||
data = json.loads(data)
|
||||
|
||||
ticket = None
|
||||
|
||||
tpl_name = 'blocks/profile/b_messages_container.html'
|
||||
|
||||
if data['text']:
|
||||
if 'text' in data or 'files' in data:
|
||||
|
||||
if 'ticket_id' in data:
|
||||
ticket = MsgGroup.objects.get(id=data['ticket_id'])
|
||||
@@ -173,9 +173,17 @@ def send_msg(data):
|
||||
msg_create_kwargs.update({
|
||||
'sender': sender,
|
||||
'receiver': receiver,
|
||||
'text': data['text']
|
||||
})
|
||||
|
||||
if 'text' in data:
|
||||
msg_create_kwargs.update({'text': data['text']})
|
||||
|
||||
if 'files' in data:
|
||||
files_list = []
|
||||
for file in data['files']:
|
||||
files_list.append(json.loads(file))
|
||||
msg_create_kwargs.update({'files': files_list})
|
||||
|
||||
msg = Message.objects.create(**msg_create_kwargs)
|
||||
|
||||
# if ticket:
|
||||
@@ -211,28 +219,28 @@ def send_msg(data):
|
||||
|
||||
|
||||
|
||||
def get_create_route_for_customer_page_content_Dict(request):
|
||||
from AuthApp.models import User
|
||||
|
||||
msgs = []
|
||||
try:
|
||||
cur_receiver = User.objects.get(id=receiver_id)
|
||||
|
||||
msgs = get_msgs_for_chat_w_users(request.user, cur_receiver)
|
||||
msgs.filter(receiver=request.user).update(status='seen')
|
||||
|
||||
except User.DoesNotExist:
|
||||
cur_receiver = None
|
||||
|
||||
receivers, unread_msgs_count = get_chat_receivers_for_user(request.user)
|
||||
|
||||
Dict = {
|
||||
'cur_receiver': cur_receiver,
|
||||
'messages': msgs,
|
||||
'receivers': receivers,
|
||||
'page': 'chat',
|
||||
}
|
||||
return Dict
|
||||
# def get_create_route_for_customer_page_content_Dict(request):
|
||||
# from AuthApp.models import User
|
||||
#
|
||||
# msgs = []
|
||||
# try:
|
||||
# cur_receiver = User.objects.get(id=receiver_id)
|
||||
#
|
||||
# msgs = get_msgs_for_chat_w_users(request.user, cur_receiver)
|
||||
# msgs.filter(receiver=request.user).update(status='seen')
|
||||
#
|
||||
# except User.DoesNotExist:
|
||||
# cur_receiver = None
|
||||
#
|
||||
# receivers, unread_msgs_count = get_chat_receivers_for_user(request.user)
|
||||
#
|
||||
# Dict = {
|
||||
# 'cur_receiver': cur_receiver,
|
||||
# 'messages': msgs,
|
||||
# 'receivers': receivers,
|
||||
# 'page': 'chat',
|
||||
# }
|
||||
# return Dict
|
||||
|
||||
|
||||
def get_chat_page_content_html(request, receiver_id=None):
|
||||
|
||||
@@ -124,12 +124,23 @@ class ChatConsumer(WebsocketConsumer):
|
||||
def receive(self, text_data=None, bytes_data=None):
|
||||
print(f'ws receive text_data = {text_data}')
|
||||
|
||||
import base64
|
||||
|
||||
from AuthApp.models import User
|
||||
from .models import Message, MsgGroup
|
||||
|
||||
|
||||
data = json.loads(text_data)
|
||||
|
||||
# if 'file' in data:
|
||||
# file_Dict = json.loads(data['file'])
|
||||
#
|
||||
# f = open(f'chat_file_storage/{file_Dict["file_name"]}', 'wb+')
|
||||
# head, content = file_Dict['file'].split(',')
|
||||
# content = base64.b64decode(content)
|
||||
# f.write(content)
|
||||
# f.close()
|
||||
|
||||
sender = data['sender']
|
||||
receiver = data['receiver']
|
||||
sender_obj = User.objects.get(id=sender)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{% load static %}
|
||||
|
||||
|
||||
{% include "widgets/w_file.html" %}
|
||||
{#{% include "widgets/w_file.html" %}#}
|
||||
{% if not messages and ticket %}
|
||||
{% include "widgets/w_message.html" %}
|
||||
{% else %}
|
||||
|
||||
@@ -8,9 +8,24 @@
|
||||
</div>
|
||||
<div class="block_text_message {% get_msg_side user ticket msg %}">
|
||||
<div class="container_text_message {% get_msg_side user ticket msg %}">
|
||||
<span class="text_message">
|
||||
{% if msg %}{{ msg.text }}{% else %}{{ ticket.text }}{% endif %}
|
||||
</span>
|
||||
{% if msg.text %}
|
||||
<span class="text_message">
|
||||
{% if msg %}{{ msg.text }}{% else %}{{ ticket.text }}{% endif %}
|
||||
</span>
|
||||
{% elif msg.files %}
|
||||
{% for file in msg.files %}
|
||||
<div class="file_border_cont">
|
||||
<div class="left_part_file_w">
|
||||
<a href="{% static "/img/svg/loader.svg" %}" download><img src="{% static "/img/svg/download_file.svg" %}" style="height:35px"></a>
|
||||
</div>
|
||||
<div class="right_part_file_w">
|
||||
<div>{{ file.file_name }}</div>
|
||||
<div>{{ file.file_size }}</div>
|
||||
</div>
|
||||
<div class="clear_both"></div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="data_send_message {% get_msg_side user ticket msg %}">
|
||||
<span>{% if msg %}{{ msg.modifiedDT }}{% else %}{{ ticket.modifiedDT }}{% endif %}</span>
|
||||
|
||||
Reference in New Issue
Block a user