diff --git a/src/lib/chat.js b/src/lib/chat.js index fa08532..4ecf07d 100644 --- a/src/lib/chat.js +++ b/src/lib/chat.js @@ -11,23 +11,17 @@ }) if(response.ok){ - let msgMassive = await response.json(); - msgMassive = msgMassive.messages - let localTime - for(let i = 0; i < msgMassive.length; i++){ - localTime = new Date(msgMassive[i].created_at) - msgMassive[i].created_at = localTime - - if(msgMassive[i].answer_id != null){ + let data = await response.json() + let msgMassive = data.messages + console.log(msgMassive, " аа сообщения", chatId, " - айди") - let answer = await getMessageById(chatId,msgMassive[i].answer_id) - msgMassive[i].answerMessage = answer.message - //console.log(answer.message) - + if(msgMassive === null){ + return [] } + else{ + msgMassive.reverse(); + return msgMassive } - msgMassive.reverse(); - return msgMassive } else if(response.status === 404){ diff --git a/src/lib/websocket.js b/src/lib/websocket.js index f283d9f..30e4e87 100644 --- a/src/lib/websocket.js +++ b/src/lib/websocket.js @@ -68,7 +68,7 @@ export default function createWebSocket(url, token, onMessageCallback) { token = token.split(" ")[1] - console.log(token) + //console.log(token) const socket = new WebSocket(url, [token]) socket.addEventListener('message', (event) => { diff --git a/src/routes/chat/+page.svelte b/src/routes/chat/+page.svelte index 952498b..07f7642 100644 --- a/src/routes/chat/+page.svelte +++ b/src/routes/chat/+page.svelte @@ -49,7 +49,8 @@ // Проверяем, что текущий хэш соответствует шаблону для чата if (window.location.hash.startsWith('#id=')) { chatId = window.location.hash.slice(4); - console.log(chatId, " chatId") + msgLoaded = 0 + console.log(chatId, " chatId", msgLoaded) messages = await getLastMessages(chatId,msgLoaded) setTimeout(scrollDown,50) @@ -69,14 +70,12 @@ socket = createWebSocket(websocketUrl, token, async (message) => { - //console.log(message, "сообщение!!!!!") - - if(message.answer_id != null){ - let answer = await getMessageById(chatId,message.answer_id) - message.answerMessage = answer.message - //console.log(answer.message) - } - if(message.flag === "delete"){ + console.log(message, "сообщение!!!!!") + if(message.flag === "pin" ){ + console.log("ЗАКРЕП!!!!!!!!!!!") + pinnedMsg = [message, ...pinnedMsg] + } + else if(message.flag === "delete"){ let messageToDelete = messages.findIndex(msg => msg.id === message.id) console.log(messageToDelete, "индекс сообщения, которое нужно делитнуть") messages.splice(messageToDelete,1) @@ -103,7 +102,7 @@ if((messageText != "") || image != null){ - console.log(image) + console.log(image, " картинка") socket.send(JSON.stringify({flag: flag, message: messageText, @@ -116,7 +115,7 @@ answer = null answerMessageTextShow = false answerMessageImgShow = false - answerMessage = "" + answerMessage = "" answerMessageImg = "" } @@ -161,7 +160,6 @@ let PickedImg = "" let PickedName = "" $: console.log(pickedId) $: console.log(answer) -$: console.log(answerMessage) function helperDivShow(event, id, text, img, username) { event.preventDefault(); @@ -186,7 +184,6 @@ function helperDivShow(event, id, text, img, username) { function hideHelperDiv(event){ if ((event.target !== helperDiv) && (helperDiv)) { - helperDiv.style.opacity = "0"; } } @@ -206,30 +203,20 @@ function helperDivShow(event, id, text, img, username) { } async function pinFunc(event){ - let findPinMsg + + let alreadyPinned = false if(pinnedMsg != null){ - findPinMsg = pinnedMsg.find(msg => msg.id === pickedId) - console.log(findPinMsg) - - if(findPinMsg != undefined){ - console.log("удаляю сообщение") - unpinMessage(chatId,pickedId) - pinnedMsg = await getPinnedMsg(chatId) - console.log(pinnedMsg) - } else { - - console.log("добавляю сообщение, потому что такого еще не было") - await pinMessage(chatId,pickedId) - pinnedMsg = await getPinnedMsg(chatId) - - }} else { - - console.log("добавляю сообщение, потому что сообщений нет") - await pinMessage(chatId,pickedId) - pinnedMsg = await getPinnedMsg(chatId) - console.log(pinmsg, " сообщения для закрепа", pinnedMsg, "массив закреп сообщений") - - }} + let findPinMsg = pinnedMsg.find(msg => msg.id === pickedId) + if(findPinMsg != null) + alreadyPinned = true + } + if(alreadyPinned === false){ + socket.send(JSON.stringify({"flag": "pin", + "user_id": userId, + "id": pickedId + })); + } + } function delFunc(event){ socket.send(JSON.stringify({"flag": "delete", @@ -371,9 +358,9 @@ function helperDivShow(event, id, text, img, username) {
{message.answerMessage.substr(0, 20)}
+{message.answer_message.substr(0, 20)}
{/if}