From afc6bc5327d6221dc614cdbaa6090890d3522b41 Mon Sep 17 00:00:00 2001 From: Miroslav Pejic Date: Wed, 3 Aug 2022 16:49:30 +0200 Subject: [PATCH] [mirotalksfu] - add reply to private message --- public/js/RoomClient.js | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/public/js/RoomClient.js b/public/js/RoomClient.js index b7d05258..e074394c 100644 --- a/public/js/RoomClient.js +++ b/public/js/RoomClient.js @@ -1854,13 +1854,14 @@ class RoomClient { if (!peer_msg) return; let data = { peer_name: this.peer_name, + peer_id: this.peer_id, to_peer_id: 'all', peer_msg: peer_msg, }; console.log('Send message:', data); this.socket.emit('message', data); this.setMsgAvatar('right', this.peer_name); - this.appendMessage('right', this.rightMsgAvatar, this.peer_name, peer_msg, 'all'); + this.appendMessage('right', this.rightMsgAvatar, this.peer_name, this.peer_id, peer_msg, 'all'); chatMessage.value = ''; } @@ -1889,13 +1890,14 @@ class RoomClient { if (!peer_msg) return; let data = { peer_name: this.peer_name, + peer_id: this.peer_id, to_peer_id: to_peer_id, peer_msg: peer_msg, }; console.log('Send message:', data); this.socket.emit('message', data); this.setMsgAvatar('right', this.peer_name); - this.appendMessage('right', this.rightMsgAvatar, this.peer_name, peer_msg, to_peer_id); + this.appendMessage('right', this.rightMsgAvatar, this.peer_name, this.peer_id, peer_msg, to_peer_id); if (!this.isChatOpen) this.toggleChat(); }); } @@ -1903,7 +1905,7 @@ class RoomClient { showMessage(data) { if (!this.isChatOpen) this.toggleChat(); this.setMsgAvatar('left', data.peer_name); - this.appendMessage('left', this.leftMsgAvatar, data.peer_name, data.peer_msg, data.to_peer_id); + this.appendMessage('left', this.leftMsgAvatar, data.peer_name, data.peer_id, data.peer_msg, data.to_peer_id); this.sound('message'); } @@ -1912,23 +1914,27 @@ class RoomClient { avatar === 'left' ? (this.leftMsgAvatar = avatarImg) : (this.rightMsgAvatar = avatarImg); } - appendMessage(side, img, from, msg, to) { + appendMessage(side, img, fromName, fromId, msg, toId) { let time = this.getTimeNow(); - let msgBubble = to == 'all' ? 'msg-bubble' : 'msg-bubble-private'; - let message = to == 'all' ? msg : msg + '
(private message)'; + let msgBubble = toId == 'all' ? 'msg-bubble' : 'msg-bubble-private'; + let replyMsg = + fromId === this.peer_id + ? '
(private message)' + : `
`; + let message = toId == 'all' ? msg : msg + replyMsg; let msgHTML = `
-
${from}
+
${fromName}
${time}
${message}
`; - this.collectMessages(time, from, msg); + this.collectMessages(time, fromName, msg); chatMsger.insertAdjacentHTML('beforeend', msgHTML); chatMsger.scrollTop += 500; } @@ -2012,6 +2018,8 @@ class RoomClient { document.body.removeChild(a); window.URL.revokeObjectURL(url); }, 100); + + this.sound('download'); } // ####################################################