|
|
|
|
@ -1,6 +1,6 @@ |
|
|
|
|
var SocketHandler = function () { |
|
|
|
|
domain = domain.replace(':' + port, ''); |
|
|
|
|
var url = 'ws://' + domain + '/chat/' + userId + '/'; |
|
|
|
|
var url = 'ws://' + domain + ':8888/chat/' + userId + '/'; |
|
|
|
|
var sock = new WebSocket(url); |
|
|
|
|
var intervalId; |
|
|
|
|
sock.onopen = function () { |
|
|
|
|
@ -21,7 +21,7 @@ var SocketHandler = function () { |
|
|
|
|
inbox = document.getElementById('message-chat-team-space'); |
|
|
|
|
} else if (message.answer_type == 'approve_stages') { |
|
|
|
|
var resOrderId = message.order_id; |
|
|
|
|
$.jGrowl(message.msg,{ |
|
|
|
|
$.jGrowl(message.msg, { |
|
|
|
|
life: 4000 |
|
|
|
|
}); |
|
|
|
|
setTimeout(function () { |
|
|
|
|
@ -34,12 +34,12 @@ var SocketHandler = function () { |
|
|
|
|
var classMessage = 'youChat'; |
|
|
|
|
var senderName = 'Вы'; |
|
|
|
|
var timeMessage = message.msg_time; |
|
|
|
|
if (message.sender_id != userId){ |
|
|
|
|
if (message.sender_id != userId) { |
|
|
|
|
senderName = message.sender_name; |
|
|
|
|
classMessage = ''; |
|
|
|
|
} |
|
|
|
|
inbox.innerHTML += '<div class="col-lg-12 insetCommChat '+ classMessage +'"><div class="topCommChat">' + |
|
|
|
|
'<p class="nameCommChat">'+ senderName +'</p> <span>' + timeMessage + '</span></div>' + |
|
|
|
|
inbox.innerHTML += '<div class="col-lg-12 insetCommChat ' + classMessage + '"><div class="topCommChat">' + |
|
|
|
|
'<p class="nameCommChat">' + senderName + '</p> <span>' + timeMessage + '</span></div>' + |
|
|
|
|
'<p class="textCommChat">' + textMessage + '</p></div>'; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -98,17 +98,32 @@ function csrfSafeMethod(method) { |
|
|
|
|
return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
var socket = new SocketHandler(); |
|
|
|
|
var csrftoken = getCookie('csrftoken'); |
|
|
|
|
$(function () { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
setTimeout(function () { |
|
|
|
|
$(".user-block").first().trigger('click'); |
|
|
|
|
}, 10); |
|
|
|
|
var currentHash = URI(location.href).hash(); |
|
|
|
|
console.log(currentHash); |
|
|
|
|
if (currentHash.indexOf("#order") == 0) { |
|
|
|
|
|
|
|
|
|
setTimeout(function () { |
|
|
|
|
$(".order-block").last().trigger('click'); |
|
|
|
|
$("a[href='#tab2']").trigger('click'); |
|
|
|
|
}, 100); |
|
|
|
|
var ordHashId = currentHash.replace("#order", ""); |
|
|
|
|
setTimeout(function () { |
|
|
|
|
$("#orderBlock" + ordHashId).trigger('click'); |
|
|
|
|
$("a[href='#tab2']").trigger('click'); |
|
|
|
|
}, 100); |
|
|
|
|
} else if (currentHash.indexOf("#team") == 0) { |
|
|
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
|
|
setTimeout(function () { |
|
|
|
|
$(".user-block").first().trigger('click'); |
|
|
|
|
}, 10); |
|
|
|
|
|
|
|
|
|
setTimeout(function () { |
|
|
|
|
$(".order-block").last().trigger('click'); |
|
|
|
|
}, 100); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$('.deleteMess').on('click', function (e) { |
|
|
|
|
@ -123,10 +138,10 @@ $(function () { |
|
|
|
|
beforeSend: function (xhr) { |
|
|
|
|
xhr.setRequestHeader("X-CSRFToken", getCookie('csrftoken')) |
|
|
|
|
}, |
|
|
|
|
data: {'sender_id':senderId, 'recipent_id': recipentId}, |
|
|
|
|
data: {'sender_id': senderId, 'recipent_id': recipentId}, |
|
|
|
|
dataType: 'json', |
|
|
|
|
success: function (json) { |
|
|
|
|
if (json.status == 'ok'){ |
|
|
|
|
if (json.status == 'ok') { |
|
|
|
|
_this.parent().remove(); |
|
|
|
|
$("#message-chat-space").html(""); |
|
|
|
|
} |
|
|
|
|
@ -161,6 +176,130 @@ $(function () { |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Добавление сообщения для заказа.
|
|
|
|
|
$('#order-chat-add-message').on('click', function (e) { |
|
|
|
|
e.preventDefault(); |
|
|
|
|
var chatMessage = $("#chat-order-add #chat").val(); |
|
|
|
|
var recipentId = $("#chat-order-add #recipentId").val(); |
|
|
|
|
var senderId = $("#chat-order-add #senderId").val(); |
|
|
|
|
var orderId = $("#chat-order-add #orderId").val(); |
|
|
|
|
|
|
|
|
|
socket.add_contact_message({ |
|
|
|
|
"format_type": "add_message_order", |
|
|
|
|
"data": { |
|
|
|
|
"sender_id": senderId, |
|
|
|
|
"recipent_id": recipentId, |
|
|
|
|
"chat_message": chatMessage, |
|
|
|
|
"order_id": orderId, |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
$("#chat-order-add #chat").val(""); |
|
|
|
|
$("#document-send-order").html(""); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
// Добавление отзыва
|
|
|
|
|
$('#order-review-add').on('click', function (e) { |
|
|
|
|
e.preventDefault(); |
|
|
|
|
e.stopPropagation(); |
|
|
|
|
var formData = $("#review-adds-form").serialize(); |
|
|
|
|
$.ajax({ |
|
|
|
|
url: '/api/reviews/', |
|
|
|
|
type: 'POST', |
|
|
|
|
beforeSend: function (xhr) { |
|
|
|
|
xhr.setRequestHeader("X-CSRFToken", getCookie('csrftoken')) |
|
|
|
|
}, |
|
|
|
|
data: formData, |
|
|
|
|
dataType: 'json', |
|
|
|
|
success: function (json) { |
|
|
|
|
console.log("Успешно"); |
|
|
|
|
$("#review-add").modal('hide'); |
|
|
|
|
$.jGrowl("Ваш отзыв успешно добавлен", { |
|
|
|
|
life: 4000 |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
error: function (e) { |
|
|
|
|
console.log('error'); |
|
|
|
|
console.log(e); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
// Добавление сообщения в арбитраж
|
|
|
|
|
$('#order-arbitration-add').on('click', function (e) { |
|
|
|
|
e.preventDefault(); |
|
|
|
|
e.stopPropagation(); |
|
|
|
|
var formData = $("#arbitration-add-form").serialize(); |
|
|
|
|
$.ajax({ |
|
|
|
|
url: '/projects/arbitration/create/', |
|
|
|
|
type: 'POST', |
|
|
|
|
beforeSend: function (xhr) { |
|
|
|
|
xhr.setRequestHeader("X-CSRFToken", getCookie('csrftoken')) |
|
|
|
|
}, |
|
|
|
|
data: formData, |
|
|
|
|
dataType: 'json', |
|
|
|
|
success: function (json) { |
|
|
|
|
console.log(json); |
|
|
|
|
$("#arbitration-add").modal('hide'); |
|
|
|
|
$.jGrowl("Обращение в арбитраж добавлено", { |
|
|
|
|
life: 4000 |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
error: function (e) { |
|
|
|
|
console.log('error'); |
|
|
|
|
console.log(e); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//Загрузка документов
|
|
|
|
|
$('#upload-document-order').fileupload({ |
|
|
|
|
url: '/chat/create/', |
|
|
|
|
formData: { |
|
|
|
|
sender: $("#chat-order-add #senderId").val(), |
|
|
|
|
recipent: $("#chat-order-add #recipentId").val(), |
|
|
|
|
order: $("#chat-order-add #orderId").val(), |
|
|
|
|
}, |
|
|
|
|
crossDomain: false, |
|
|
|
|
beforeSend: function (xhr, settings) { |
|
|
|
|
$('#progress .progress-bar').css( |
|
|
|
|
'width', |
|
|
|
|
'0%' |
|
|
|
|
); |
|
|
|
|
if (!csrfSafeMethod(settings.type)) { |
|
|
|
|
xhr.setRequestHeader("X-CSRFToken", csrftoken); |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
dataType: 'json', |
|
|
|
|
done: function (e, data) { |
|
|
|
|
$.each(data.result.files, function (index, file) { |
|
|
|
|
var currentValue = ''; |
|
|
|
|
currentValue += file.id + ';'; |
|
|
|
|
//$("#documentSendIds").val(currentValue);
|
|
|
|
|
var htmlImg = '<p>' + file.name + '</p>'; |
|
|
|
|
var document_send = $(htmlImg).appendTo("#document-send-order"); |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
fail: function (e) { |
|
|
|
|
console.log(e); |
|
|
|
|
}, |
|
|
|
|
progressall: function (e, data) { |
|
|
|
|
var progress = parseInt(data.loaded / data.total * 100, 10); |
|
|
|
|
$('#progress .progress-bar').css( |
|
|
|
|
'width', |
|
|
|
|
progress + '%' |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
}).prop('disabled', !$.support.fileInput) |
|
|
|
|
.parent().addClass($.support.fileInput ? undefined : 'disabled'); |
|
|
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|