diff --git a/assets/css/main.css b/assets/css/main.css
index 1dd75f8..b4e4b5a 100644
--- a/assets/css/main.css
+++ b/assets/css/main.css
@@ -3770,7 +3770,7 @@ input[type="checkbox"]:checked + span {
padding: 30px 0 0 0;
}
-.orderBlock {
+.orderBlock, .trashedOrderBlock {
width: 100%;
float: left;
margin-bottom: -1px;
@@ -3785,7 +3785,7 @@ input[type="checkbox"]:checked + span {
transition: all 0.3s ease-out;
}
-.orderBlock:hover {
+.orderBlock:hover, .trashedOrderBlock:hover {
background-color: white;
border-top: 1px solid black;
border-bottom: 1px solid black;
@@ -3886,7 +3886,7 @@ input[type="checkbox"]:checked + span {
transition: all 0.3s ease-out;
}
-.orderBlock:hover .dimovChat {
+.orderBlock:hover .dimovChat,.trashedOrderBlock:hover .dimovChat {
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
transform: rotate(90deg);
@@ -3898,7 +3898,7 @@ input[type="checkbox"]:checked + span {
transform: rotate(90deg);
}
-.orderBlock:hover .hideOBB {
+.orderBlock:hover .hideOBB,.trashedOrderBlock:hover .hideOBB {
display: block;
}
diff --git a/assets/js/chat.js b/assets/js/chat.js
index b05cd8a..3bb7d75 100644
--- a/assets/js/chat.js
+++ b/assets/js/chat.js
@@ -184,38 +184,60 @@ function dialog (message, yesCallback, notCallback) {
$("a[href='#tab1']").trigger('click');
}
- $("#trashed-button").on('click',function(e){
- e.preventDefault();
- var trashedOrderHtml = "";
+
+
+ $(".messageBlock").on('click','.trashedOrderBlock',function(){
+ $("#chat-order-add").css("display", "none");
+ $('.order-block, .trashedOrderBlock').each(function () {
+ $(this).removeClass('orAct');
+ });
+ $(this).addClass('orAct');
+ var inbox = document.getElementById('message-chat-order-space');
+ var docList = document.getElementById('documentOrderSpace');
+ inbox.innerHTML = '';
+ docList.innerHTML = '';
+ var orderId = $(this).attr('data-id');
+ location.hash = '#order' + orderId;
+
$.ajax({
- url: '/api/orders/',
+ url: '/api/message',
type: 'GET',
+ data: {csrfmiddlewaretoken: csrftoken, 'order': orderId, 'team__isnull': 'true'},
dataType: 'json',
- success: function(json){
- console.log(json.results);
- $.each(json.results, function(i, v){
- var temp = '
' +
- '
'+ v.project.name +'
';
-
- trashedOrderHtml += temp;
+ success: function (json) {
+ $.each(json.results, function (i, v) {
+ var senderName = 'Вы';
+ var className = 'youChat';
+
+ if (v.sender.id !== userId) {
+ senderName = v.sender.username;
+ className = '';
+ }
+
+ inbox.innerHTML += '' +
+ '
' + senderName + '
' + v.created + '' +
+ '
' + v.text + '
';
+
});
- $("#trashed-orders").html(trashedOrderHtml);
- },
- error: function(e, jqxhr){
- console.log(e);
+ var height = inbox.scrollHeight;
+ inbox.scrollTop = height;
}
- })
+ });
+
+ $("#order-stages").html("");
+ $("#completeWork").hide();
+ $("#add-form-order-note").hide();
+
});
// Информация о заказе
- $(".full-order-info").click('on', function (e) {
+ $(".messageBlock").on('click','.full-order-info', function (e) {
e.preventDefault();
e.stopPropagation();
var orderId = $(this).closest('.orderBlock').attr('data-id');
+ if (!orderId){
+ orderId = $(this).closest('.trashedOrderBlock').attr('data-id');
+ }
$.ajax({
url: '/api/orders/' + orderId + '/',
data: {
diff --git a/assets/js/chat_customer.js b/assets/js/chat_customer.js
index d614782..97779b4 100644
--- a/assets/js/chat_customer.js
+++ b/assets/js/chat_customer.js
@@ -408,9 +408,55 @@ $(function () {
}
});
+
+ $("#trashed-button").on('click',function(e){
+ e.preventDefault();
+ var state = $(this).attr('data-show');
+ var trashedOrderHtml = "";
+
+ if (state == 'true') {
+ $(this).attr('data-show','false');
+ $(this).text("Скрыть архивные заказы");
+
+ $.ajax({
+ url: '/api/orders/',
+ type: 'GET',
+ dataType: 'json',
+ success: function (json) {
+ console.log(json.results);
+ $.each(json.results, function (i, v) {
+
+ var temp = '' +
+ '
' + v.project.name + '
';
+
+ trashedOrderHtml += temp;
+ });
+ $("#trashed-orders").html(trashedOrderHtml);
+
+ },
+ error: function (e, jqxhr) {
+ console.log(e);
+ }
+ });
+
+ }else {
+ $(this).attr('data-show','true');
+ $(this).text("Показать архивные заказы");
+ $("#trashed-orders").html("");
+ }
+
+
+ });
+
+
// Для заказов все вытащить
$('.order-block').on('click', function () {
$("#chat-order-add").css("display", "block");
+ $("#add-form-order-note").css("display", "block");
$("#formsetStage").css("display", "block");
$('.order-block').each(function () {
diff --git a/chat/chat.py b/chat/chat.py
index 5d1eda1..3d6ab48 100644
--- a/chat/chat.py
+++ b/chat/chat.py
@@ -43,17 +43,16 @@ class ChatHandler(websocket.WebSocketHandler):
@gen.coroutine
def approve_stages(self, data):
- print(data)
data['data']['chat_message'] = data['data']['msg']
self.add_message(data)
- sender_id = data['data']['sender_id']
- recipent_id = data['data']['recipent_id']
- order_id = data['data'].get('order_id')
- message = data['data'].get('msg', 'Этапы обновлены')
- answer_type = data['format_type']
- waiters = tuple(w for c, w in self.waiters if c == recipent_id or c == sender_id)
- for waiter in waiters:
- waiter.write_message({'msg': message, 'order_id': order_id, 'answer_type': answer_type})
+ # sender_id = data['data']['sender_id']
+ # recipent_id = data['data']['recipent_id']
+ # order_id = data['data'].get('order_id')
+ # message = data['data'].get('msg', 'Этапы обновлены')
+ # answer_type = data['format_type']
+ # waiters = tuple(w for c, w in self.waiters if c == recipent_id or c == sender_id)
+ # for waiter in waiters:
+ # waiter.write_message({'msg': message, 'order_id': order_id, 'answer_type': answer_type})
@gen.coroutine
def add_message(self, message_data):
@@ -71,8 +70,10 @@ class ChatHandler(websocket.WebSocketHandler):
docs_links = ''
docs_attach = ''
- message = html.escape(message)
- message = message.replace('\n', '
')
+ message_type = message_data.get('message_type', None)
+ if not message_type:
+ message = html.escape(message)
+ message = message.replace('\n', '
')
answer_type = message_data['format_type']
private_type = 'true' if not order_id and not team_id else 'false'
diff --git a/chat/templates/chat_customer.html b/chat/templates/chat_customer.html
index bdbdf87..629f840 100644
--- a/chat/templates/chat_customer.html
+++ b/chat/templates/chat_customer.html
@@ -148,17 +148,17 @@
{% endfor %}
- Архивные заказы
+ Архивные заказы
-
+