diff --git a/assets/css/extra.css b/assets/css/extra.css
index 9d3ee0c..0be3fb1 100644
--- a/assets/css/extra.css
+++ b/assets/css/extra.css
@@ -134,3 +134,7 @@
float: none;
margin: 19px 0 -10px 0;
}
+
+.documentsChat > p {
+ font-size: 20px;
+}
diff --git a/assets/js/chat.js b/assets/js/chat.js
index c5632e1..f38847e 100644
--- a/assets/js/chat.js
+++ b/assets/js/chat.js
@@ -191,7 +191,6 @@ $(function () {
})
});
-
//Удаление документа
$('.tab-content').on('click','.remove-document', function(e){
e.preventDefault();
@@ -199,10 +198,11 @@ $(function () {
var _this = $(this);
$.ajax({
url: '/api/documents/' + dataId +'/',
- type: 'DELETE',
+ type: 'PATCH',
beforeSend: function (xhr) {
xhr.setRequestHeader("X-CSRFToken", getCookie('csrftoken'))
},
+ data: {is_delete:true},
dataType: 'json',
success: function(json){
_this.parent().remove();
@@ -214,9 +214,7 @@ $(function () {
});
});
-
// Вытащить сообщения для конактов
-
$('.user-block').on('click', function () {
var contactId = $(this).attr('data-id');
$("#contact-chat-form #recipentContactId").val(contactId);
@@ -244,6 +242,8 @@ $(function () {
'operand': 'in',
'sender_id': userId,
'recipent_id': contactId,
+ 'is_delete': false,
+ 'is_send': true,
},
dataType: 'json',
@@ -368,6 +368,11 @@ $(function () {
var orderId = $("#chat-order-add #orderId").val();
if (chatMessage) {
+ var sendLinks = $("#document-send-order a");
+ var sendLinkIds = "";
+ $.each(sendLinks, function(i, v){
+ sendLinkIds += $(this).attr('data-id') + ';';
+ });
socket.add_contact_message({
"format_type": "add_message_order",
"data": {
@@ -375,7 +380,7 @@ $(function () {
"recipent_id": recipentId,
"chat_message": chatMessage,
"order_id": orderId,
-
+ "document_send_links": sendLinkIds,
}
});
diff --git a/chat/chat.py b/chat/chat.py
index 171bd6d..7c53ff4 100644
--- a/chat/chat.py
+++ b/chat/chat.py
@@ -59,7 +59,7 @@ class ChatHandler(websocket.WebSocketHandler):
order_id = message_data['data'].get('order_id', None)
team_id = message_data['data'].get('team_id', None)
message = message_data['data'].get('chat_message', None)
- document_send_links = message_data['data'].get('document_send_links', None)
+ docs_send_links = message_data['data'].get('document_send_links', None)
message = html.escape(message)
message = message.replace('\n', '
')
@@ -84,6 +84,12 @@ class ChatHandler(websocket.WebSocketHandler):
cursor = cursor_list.get('cursor')
result = cursor.fetchone()
message_id = result[0]
+ if docs_send_links:
+ is_send = 'true'
+ docs_send_ids = docs_send_links.rstrip(';').replace(';', ',')
+ update_sql_documents = "UPDATE chat_documents SET message_id={0},is_send={1} WHERE id IN({2})".format(message_id, is_send, docs_send_ids)
+ yield self.db.execute(update_sql_documents)
+
select_last_sql = "SELECT chat_message.id, chat_message.text, chat_message.created, chat_message.sender_id," \
"users_user.id, users_user.username FROM chat_message" \
" INNER JOIN users_user ON (chat_message.sender_id = users_user.id)" \
diff --git a/chat/migrations/0011_documents_is_delete.py b/chat/migrations/0011_documents_is_delete.py
new file mode 100644
index 0000000..89783b7
--- /dev/null
+++ b/chat/migrations/0011_documents_is_delete.py
@@ -0,0 +1,20 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.7 on 2016-09-06 13:33
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('chat', '0010_auto_20160901_1247'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='documents',
+ name='is_delete',
+ field=models.BooleanField(default=False),
+ ),
+ ]
diff --git a/chat/models.py b/chat/models.py
index 585c754..f372c27 100644
--- a/chat/models.py
+++ b/chat/models.py
@@ -47,6 +47,7 @@ class Documents(models.Model):
recipent = models.ForeignKey(User, related_name='recipent_documents', null=True, blank=True)
created = models.DateTimeField(auto_now_add=True)
is_send = models.BooleanField(default=False)
+ is_delete = models.BooleanField(default=False)
message = models.ForeignKey(Message, related_name='documents', null=True, blank=True)
def __str__(self):
diff --git a/chat/serializers.py b/chat/serializers.py
index 99a7d9c..d8c07cc 100644
--- a/chat/serializers.py
+++ b/chat/serializers.py
@@ -23,6 +23,7 @@ class DocumentsSerializer(ModelSerializer):
'team',
'order',
'is_send',
+ 'is_delete',
'message',
)
@@ -59,10 +60,10 @@ class MessageSerializer(ModelSerializer):
def get_text(self, obj):
out = obj.text
- # documents = obj.documents.all()
- # if len(documents)>0:
- # documents_str = '
'.join([doc.file.name for doc in documents])
- # out += '
' + documents_str
+ documents = obj.documents.all()
+ if len(documents)>0:
+ documents_str = '
'.join(['' + doc.file.name + '' for doc in documents])
+ out += '
' + documents_str
return out
diff --git a/chat/templates/chat_contractor.html b/chat/templates/chat_contractor.html
index 4aef569..d5b083c 100644
--- a/chat/templates/chat_contractor.html
+++ b/chat/templates/chat_contractor.html
@@ -89,12 +89,12 @@
Входящие документы
+Прикрепленные документы
Входящие документы
+Прикрепленные документы
Входящие документы
+Прикрепленные документы
Входящие документы
+Прикрепленные документы