Skip to content

Commit 71c11b4

Browse files
Chatify
1 parent 32571f2 commit 71c11b4

File tree

8 files changed

+78
-93
lines changed

8 files changed

+78
-93
lines changed

client/src/components/EditUserDetails.js

+9-9
Original file line numberDiff line numberDiff line change
@@ -56,40 +56,40 @@ const EditUserDetails = ({ onClose, user }) => {
5656
})
5757
}
5858

59-
59+
6060
const handleSubmit = async (e) => {
6161
e.preventDefault();
6262
e.stopPropagation();
63-
63+
6464
try {
65-
const URL = `${process.env.REACT_APP_BACKEND_URL}/api/update-user`;
66-
65+
const URL = 'https://chatify-two-drab.vercel.app/api/update-user';
66+
6767
// Filter out necessary fields from data object
6868
const filteredData = {
6969
name: data.name,
7070
profile_pic: data.profile_pic,
7171
// Add any other properties that are required by your API
7272
};
73-
73+
7474
const response = await axios({
7575
method: 'post',
7676
url: URL,
7777
data: filteredData,
7878
withCredentials: true
7979
});
80-
80+
8181
taost.success(response?.data?.message);
82-
82+
8383
if (response.data.success) {
8484
dispatch(setUser(response.data.data));
8585
onClose();
8686
}
87-
87+
8888
} catch (error) {
8989
taost.error();
9090
}
9191
}
92-
92+
9393
return (
9494
<div className='fixed top-0 bottom-0 left-0 right-0 bg-gray-700 bg-opacity-40 flex justify-center items-center z-10'>
9595
<div className='bg-white p-4 py-6 m-1 rounded w-full max-w-sm'>

client/src/components/SearchUser.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ const SearchUser = ({onClose}) => {
1313

1414

1515
const handleSearchUser = async()=>{
16-
const URL = `${process.env.REACT_APP_BACKEND_URL}/api/search-user`
16+
const URL = 'https://chatify-two-drab.vercel.app/api/search-user'
1717
try {
1818
setLoading(true)
1919
const response = await axios.post(URL,{

client/src/pages/CheckEmailPage.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ const CheckEmailPage = () => {
2727
e.preventDefault()
2828
e.stopPropagation()
2929

30-
const URL = `${process.env.REACT_APP_BACKEND_URL}api/email`
30+
const URL = 'https://chatify-two-drab.vercel.app/api/email'
3131

3232
try {
3333
const response = await axios.post(URL,data)

client/src/pages/CheckPasswordPage.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ const CheckPasswordPage = () => {
3939
e.preventDefault()
4040
e.stopPropagation()
4141

42-
const URL = `${process.env.REACT_APP_BACKEND_URL}api/password`
42+
const URL = 'https://chatify-two-drab.vercel.app/api/password'
4343

4444
try {
4545
const response = await axios({

client/src/pages/Home.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ const Home = () => {
1616

1717
const fetchUserDetails = async()=>{
1818
try {
19-
const URL = `${process.env.REACT_APP_BACKEND_URL}api/user-details`
19+
const URL = 'https://chatify-two-drab.vercel.app/api/user-details'
2020
const response = await axios({
2121
url : URL,
2222
withCredentials : true

client/src/pages/RegisterPage.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ const RegisterPage = () => {
5050
e.preventDefault()
5151
e.stopPropagation()
5252

53-
const URL = `${process.env.REACT_APP_BACKEND_URL}api/register`
53+
const URL = 'https://chatify-two-drab.vercel.app/api/register'
5454

5555
try {
5656
const response = await axios.post(URL,data)

server/index.js

+2-10
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,9 @@ const cookiesParser = require('cookie-parser')
77
const { app, server } = require('./socket/index')
88

99
// const app = express()
10-
const allowedOrigins = [`${process.env.FRONTEND_URL}`];
11-
1210
app.use(cors({
13-
origin: function (origin, callback) {
14-
if (allowedOrigins.indexOf(origin) !== -1 || !origin) {
15-
callback(null, true);
16-
} else {
17-
callback(new Error('Not allowed by CORS'));
18-
}
19-
},
20-
credentials: true,
11+
origin: 'https://chatify-ahkg.vercel.app/',
12+
credentials: true
2113
}))
2214
app.use(express.json())
2315
app.use(cookiesParser())

server/socket/index.js

+62-69
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,19 @@
11
const express = require('express')
22
const { Server } = require('socket.io')
3-
const http = require('http')
3+
const http = require('http')
44
const getUserDetailsFromToken = require('../helpers/getUserDetailsFromToken')
55
const UserModel = require('../models/UserModel')
6-
const { ConversationModel, MessageModel } = require('../models/ConversationModel')
6+
const { ConversationModel,MessageModel } = require('../models/ConversationModel')
77
const getConversation = require('../helpers/getConversation')
88

99
const app = express()
1010

1111
/***socket connection */
1212
const server = http.createServer(app)
13-
const allowedOrigins = [`${process.env.FRONTEND_URL}`];
14-
const io = new Server(server, {
15-
cors: {
16-
origin: function (origin, callback) {
17-
if (allowedOrigins.indexOf(origin) !== -1 || !origin) {
18-
callback(null, true);
19-
} else {
20-
callback(new Error('Not allowed by CORS'));
21-
}
22-
},
23-
credentials: true,
13+
const io = new Server(server,{
14+
cors : {
15+
origin : 'https://chatify-ahkg.vercel.app/',
16+
credentials : true
2417
}
2518
})
2619

@@ -31,9 +24,9 @@ const io = new Server(server, {
3124
//online user
3225
const onlineUser = new Set()
3326

34-
io.on('connection', async (socket) => {
27+
io.on('connection',async(socket)=>{
3528

36-
const token = socket.handshake.auth.token
29+
const token = socket.handshake.auth.token
3730

3831
//current user details
3932
const user = await getUserDetailsFromToken(token)
@@ -42,123 +35,123 @@ io.on('connection', async (socket) => {
4235
socket.join(user?._id.toString())
4336
onlineUser.add(user?._id?.toString())
4437

45-
io.emit('onlineUser', Array.from(onlineUser))
38+
io.emit('onlineUser',Array.from(onlineUser))
4639

47-
socket.on('message-page', async (userId) => {
40+
socket.on('message-page',async(userId)=>{
4841
const userDetails = await UserModel.findById(userId).select("-password")
49-
42+
5043
const payload = {
51-
_id: userDetails?._id,
52-
name: userDetails?.name,
53-
email: userDetails?.email,
54-
profile_pic: userDetails?.profile_pic,
55-
online: onlineUser.has(userId)
44+
_id : userDetails?._id,
45+
name : userDetails?.name,
46+
email : userDetails?.email,
47+
profile_pic : userDetails?.profile_pic,
48+
online : onlineUser.has(userId)
5649
}
57-
socket.emit('message-user', payload)
50+
socket.emit('message-user',payload)
5851

5952

60-
//get previous message
61-
const getConversationMessage = await ConversationModel.findOne({
62-
"$or": [
63-
{ sender: user?._id, receiver: userId },
64-
{ sender: userId, receiver: user?._id }
53+
//get previous message
54+
const getConversationMessage = await ConversationModel.findOne({
55+
"$or" : [
56+
{ sender : user?._id, receiver : userId },
57+
{ sender : userId, receiver : user?._id}
6558
]
66-
}).populate('messages').sort({ updatedAt: -1 })
59+
}).populate('messages').sort({ updatedAt : -1 })
6760

68-
socket.emit('message', getConversationMessage?.messages || [])
61+
socket.emit('message',getConversationMessage?.messages || [])
6962
})
7063

7164

7265
//new message
73-
socket.on('new message', async (data) => {
66+
socket.on('new message',async(data)=>{
7467

7568
//check conversation is available both user
7669

7770
let conversation = await ConversationModel.findOne({
78-
"$or": [
79-
{ sender: data?.sender, receiver: data?.receiver },
80-
{ sender: data?.receiver, receiver: data?.sender }
71+
"$or" : [
72+
{ sender : data?.sender, receiver : data?.receiver },
73+
{ sender : data?.receiver, receiver : data?.sender}
8174
]
8275
})
8376

8477
//if conversation is not available
85-
if (!conversation) {
78+
if(!conversation){
8679
const createConversation = await ConversationModel({
87-
sender: data?.sender,
88-
receiver: data?.receiver
80+
sender : data?.sender,
81+
receiver : data?.receiver
8982
})
9083
conversation = await createConversation.save()
9184
}
92-
85+
9386
const message = new MessageModel({
94-
text: data.text,
95-
imageUrl: data.imageUrl,
96-
videoUrl: data.videoUrl,
97-
msgByUserId: data?.msgByUserId,
87+
text : data.text,
88+
imageUrl : data.imageUrl,
89+
videoUrl : data.videoUrl,
90+
msgByUserId : data?.msgByUserId,
9891
})
9992
const saveMessage = await message.save()
10093

101-
const updateConversation = await ConversationModel.updateOne({ _id: conversation?._id }, {
102-
"$push": { messages: saveMessage?._id }
94+
const updateConversation = await ConversationModel.updateOne({ _id : conversation?._id },{
95+
"$push" : { messages : saveMessage?._id }
10396
})
10497

10598
const getConversationMessage = await ConversationModel.findOne({
106-
"$or": [
107-
{ sender: data?.sender, receiver: data?.receiver },
108-
{ sender: data?.receiver, receiver: data?.sender }
99+
"$or" : [
100+
{ sender : data?.sender, receiver : data?.receiver },
101+
{ sender : data?.receiver, receiver : data?.sender}
109102
]
110-
}).populate('messages').sort({ updatedAt: -1 })
103+
}).populate('messages').sort({ updatedAt : -1 })
111104

112105

113-
io.to(data?.sender).emit('message', getConversationMessage?.messages || [])
114-
io.to(data?.receiver).emit('message', getConversationMessage?.messages || [])
106+
io.to(data?.sender).emit('message',getConversationMessage?.messages || [])
107+
io.to(data?.receiver).emit('message',getConversationMessage?.messages || [])
115108

116109
//send conversation
117110
const conversationSender = await getConversation(data?.sender)
118111
const conversationReceiver = await getConversation(data?.receiver)
119112

120-
io.to(data?.sender).emit('conversation', conversationSender)
121-
io.to(data?.receiver).emit('conversation', conversationReceiver)
113+
io.to(data?.sender).emit('conversation',conversationSender)
114+
io.to(data?.receiver).emit('conversation',conversationReceiver)
122115
})
123116

124117

125118
//sidebar
126-
socket.on('sidebar', async (currentUserId) => {
127-
console.log("current user", currentUserId)
119+
socket.on('sidebar',async(currentUserId)=>{
120+
console.log("current user",currentUserId)
128121
const conversation = await getConversation(currentUserId)
129122

130-
socket.emit('conversation', conversation)
131-
123+
socket.emit('conversation',conversation)
124+
132125
})
133126

134-
socket.on('seen', async (msgByUserId) => {
135-
127+
socket.on('seen',async(msgByUserId)=>{
128+
136129
let conversation = await ConversationModel.findOne({
137-
"$or": [
138-
{ sender: user?._id, receiver: msgByUserId },
139-
{ sender: msgByUserId, receiver: user?._id }
130+
"$or" : [
131+
{ sender : user?._id, receiver : msgByUserId },
132+
{ sender : msgByUserId, receiver : user?._id}
140133
]
141134
})
142135

143136
const conversationMessageId = conversation?.messages || []
144137

145-
const updateMessages = await MessageModel.updateMany(
146-
{ _id: { "$in": conversationMessageId }, msgByUserId: msgByUserId },
147-
{ "$set": { seen: true } }
138+
const updateMessages = await MessageModel.updateMany(
139+
{ _id : { "$in" : conversationMessageId }, msgByUserId : msgByUserId },
140+
{ "$set" : { seen : true }}
148141
)
149142

150143
//send conversation
151144
const conversationSender = await getConversation(user?._id?.toString())
152145
const conversationReceiver = await getConversation(msgByUserId)
153146

154-
io.to(user?._id?.toString()).emit('conversation', conversationSender)
155-
io.to(msgByUserId).emit('conversation', conversationReceiver)
147+
io.to(user?._id?.toString()).emit('conversation',conversationSender)
148+
io.to(msgByUserId).emit('conversation',conversationReceiver)
156149
})
157150

158151
//disconnect
159-
socket.on('disconnect', () => {
152+
socket.on('disconnect',()=>{
160153
onlineUser.delete(user?._id?.toString())
161-
console.log('disconnect user ', socket.id)
154+
console.log('disconnect user ',socket.id)
162155
})
163156
})
164157

0 commit comments

Comments
 (0)