Browse Source

Merge branch 'new-branch'

serg1557733 11 months ago
parent
commit
2384242f40

+ 1 - 2
backend/app.js

@@ -372,7 +372,6 @@ socket.emit('my chats', privateChats)
         socket.on('privat chat', async (data) => {
             //find user to in Db
             const privateMessagesToUser = await PrivateMessage.find({toUser: {$in:[data.user._id, data.toUser._id]}, fromUser: {$in:[data.user._id, data.toUser._id]}}).sort({ 'createDate': 1 })
-          
             //find user from in db
             //compare users and if messages is - send 
             socket.emit('send privat messages', privateMessagesToUser)
@@ -391,7 +390,7 @@ socket.emit('my chats', privateChats)
           //emit event 
           
         const privateMessageSentUser = await User.find({_id: fromUser }) // send from user what messaged
-        //const privateMessagesToUser = await PrivateMessage.find({toUser: {$in:[fromUser._id, toUser._id]}, fromUser: {$in:[fromUser._id,toUser._id]}}).sort({ 'createDate': 1 })
+       // const privateMessagesToUser = await PrivateMessage.find({toUser: {$in:[fromUser._id, toUser._id]}, fromUser: {$in:[fromUser._id,toUser._id]}}).sort({ 'createDate': 1 })
         socket.to(toUser?.socketId).emit('private', {...privateMessage._doc, sender: privateMessageSentUser });
         //socket.to(fromUser?.socketId).emit('private', {...privateMessage._doc, sender: privateMessageSentUser });
 

+ 11 - 2
frontend/src/components/chatPage/ChatPage.jsx

@@ -76,7 +76,7 @@ export const ChatPage = () => {
 
     const sendPrivateMessage = () => {
         
-        const toUserSocket = usersOnline.find(user => user._id == toUser._id)
+        const toUserSocket = usersOnline.find(user => user._id == toUser._id)|| toUser
         const fromUserSocket = usersOnline.find(userInSocket => userInSocket._id == user._id)
 
         ///***need to fix  sending own messages to me
@@ -95,7 +95,16 @@ export const ChatPage = () => {
             message: message.message,
             to: chatId,
             toUser:toUserSocket
-          })
+                })
+
+        if(toUserSocket){
+            socket.emit('privat chat', {
+                    user: fromUserSocket,
+                    to: chatId,
+                    toUser: toUserSocket
+                })
+        }
+       
         
     }
 

+ 9 - 0
frontend/src/components/chatPage/generalChat/UserInfoButton.jsx

@@ -45,6 +45,15 @@ useEffect(() => {
 
   //  console.log('usersinfobutton Item',item)
 
+
+    const privateChatHandler = (item) => {
+        socket.emit('privat chat', {
+            user,
+            to: item.socketId,
+            toUser: item
+          })
+    }
+
     useEffect(() => {
         if(newPrivateMessages.text && newPrivateMessages?.sender[0].userName === item.userName){
          setIsPrivate(!!newPrivateMessages.text)

+ 0 - 1
frontend/src/components/chatPage/privateChat/PrivateChat.jsx

@@ -46,7 +46,6 @@ export const PrivateChat = () => {
     const regYoutube = /http(?:s?):\/\/(?:www\.)?youtu(?:be\.com\/watch\?v=|\.be\/)([\w\-\_]*)(&(amp;)?‌​[\w\?‌​=]*)?/; //for youtube video
 
 
-    console.log(newPrivateMessages)