function sendMessageSocket (data) { if (chatSocket && chatSocket.readyState !== 0) { if (chatSocket.readyState !== 1 && chatSocket.readyState !== 0){ init_ws() } loader_show_message(data) chatSocket.send(JSON.stringify(data)); if (!data.ticket_id){ let el_tab = document.querySelector(".tab_user_messanger.select") if (el_tab !== null){ el_tab.querySelector(".last-message-messenger-user-tab").innerHTML = data['text'] } } } else { alert('Websoket connection failed') } } function wsReceiveData (e) { let old_item_tab_user_list = inital_old_tab() let el_tab = old_item_tab_user_list[0] let old_item_tab_user = old_item_tab_user_list[1] let data = JSON.parse(e.data); console.log('Data:', data); console.log("return") let msg_cont = document.querySelector(".container-messages") if (data.type === 'chat') { document.querySelector(".container-messages").innerHTML = data.html; document.querySelector(".enter-message-inp").focus() } else if (data.type === "echo") { console.log(data) } else if (data.type === "update_chat") { let msg_cont = document.querySelector(".container-messages") if (getInfoAboutUser('screen_width') < 800){ if (!window.location.href.includes("chat") && !window.location.href.includes("support")){ let marker_new_messages = document.querySelector(".marker_messages_mobile"); if (marker_new_messages.classList.contains('hide')){ marker_new_messages.classList.add('show') marker_new_messages.classList.remove('hide') } setCokie(365,'twb_new_messages',true) } } update_chat_html(data,msg_cont) // document.querySelector(".tab_user_messanger.select").scrollIntoView({behavior: "smooth",block:'end',inline:'end'}); // update_tickets_w_manager(data,old_item_tab_user) // // update_tickets_wo_manager(data,old_item_tab_user) update_tickets_operations_manager(el_tab,data,old_item_tab_user,'w') update_tickets_operations_manager(el_tab,data,old_item_tab_user,null,'wo') // if (){ if (data.group_name === "support_managers") { let ticket_maneger = data.ticket_manager if (ticket_maneger) { let user_id = document.querySelector(".button_profile_header").dataset["userId"] if (user_id) { if (ticket_maneger.toString() !== user_id) { clear_messenger() } else { } } else { let user_id_inf_er = "Error user id is not defined" console.log(user_id_inf_er) // не найден user id } } else { let error_ticket_manager = "Error ticket_manager is not defined" console.log(error_ticket_manager) } } else { // if (data.chat_html){ // if (msg_cont){ // if (msg_cont.dataset['curReceiver'] === data['sender'].toString() || msg_cont.dataset['curReceiver'] === data['receiver'].toString()) { // msg_cont.innerHTML = data.chat_html // } // } else { // let error_msg_cont = "Error msg_cont is not defined" // console.log(error_msg_cont) // } if (data.support_chat_html){ let cont_mes_ins = document.querySelector(".info_profile") if (cont_mes_ins){ cont_mes_ins.innerHTML = data.support_chat_html } else { let error_cont_mes_ins = "Error cont_mes_ins is not defined" console.log(error_cont_mes_ins) // не найден info profile } } } // } // if if (window.location.href.includes("chat")){ update_list_w_users(data,old_item_tab_user,el_tab) } } else if (data.type === "update_support_chat"){ update_support_chat_func(data,msg_cont) } if (data.unread_msgs_count > 0){ if (getInfoAboutUser('screen_width') < 800){ if (!window.location.href.includes("chat") && !window.location.href.includes("support")){ let marker_new_messages = document.querySelector(".marker_messages_mobile"); if (marker_new_messages.classList.contains('hide')){ marker_new_messages.classList.add('show') marker_new_messages.classList.remove('hide') } setCokie(365,'twb_new_messages',true) } } update_count_unread_messages(data) } if (data.required_beep === true) { play_required_beep(data,beep) } loader_show_message(data) loader_hide_message(data) } // function update_tickets_operations_manager (el_tab,data,old_item_tab_user,w=null,wo=null) { // let insert_type = null // if (w !== null){ // insert_type = 'data.tickets_w_manager_html' // } else if (wo !== null){ // insert_type = 'data.tickets_wo_manager_html' // } // if (insert_type) { // if (document.querySelector(".list_linked_tickets") !== null || document.querySelector(".list_unlinked_tickets") !== null) { // document.querySelector(".list_unlinked_tickets").innerHTML = insert_type // // if (el_tab !== null) { // // let select_tab = document.querySelector(".tab_user_messanger.select") // // if (select_tab) { // // select_tab.classList.remove("select") // // } // // let old_insert_tab = document.querySelector(`[data-cur-receiver-item="${old_item_tab_user}"]`) // // if (old_insert_tab) { // // old_insert_tab.classList.add("select") // // old_insert_tab.scrollIntoView({behavior: "smooth"}); // // } // // // // } // // let container_messenger = document.querySelector(".container-messages") // // if (container_messenger){ // // let dataset_cont_mes = container_messenger.dataset // // if (dataset_cont_mes){ // // let ticket_id = dataset_cont_mes["ticketId"] // // if (ticket_id !== ""){ // // let ticket = document.querySelector(`[data-cur-receiver-item="${ticket_id}"]`) // // if (ticket === null){ // // let chat = document.querySelector(".block-chat").innerHTML = "" // // } // // } // // } // // } // select_and_scroll_to_ticket(data,old_item_tab_user,el_tab) // clear_messenger(data) // } // // } // } // let url = `ws://localhost:8000/ws/socket-server/`; // // const chatSocket = new WebSocket(url); // // chatSocket.onmessage = function (e) { // let data = JSON.parse(e.data) // console.log('Data: ', data) // // if (data.type === 'chat') { // // let messages = document.getElementById('messages') // // // // messages.insertAdjacentHTML('beforeend', `
${data.message}
// //