Skip to content

Commit 0238ffb

Browse files
committed
Fix unauthorized viewing of non-friends' dashboards for real
1 parent 846f026 commit 0238ffb

File tree

3 files changed

+6
-5
lines changed

3 files changed

+6
-5
lines changed

back/src/routers/taskRouter.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ taskRouter.get('/friend/:username', async (request: AuthenticatedRequest, respon
5353
if (!user) {
5454
return response.status(400).json({ error: 'User does not exist.' });
5555
}
56-
if (request.user.friendsData.friends.map(friend => friend.toUpperCase() === username.toUpperCase())) {
56+
if (request.user.friendsData.friends.map(friend => friend.toUpperCase() === username.toUpperCase()).length === 0) {
5757
return response.status(401).json({ error: 'You do not have this user added.' });
5858
}
5959
const tasks: TaskInterface[] = [];

back/src/routers/userRouter.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ userRouter.get('/friend/:username', async (request: AuthenticatedRequest, respon
2626
if (!user) {
2727
return response.status(400).json({ error: 'User does not exist.' });
2828
}
29-
if (request.user.friendsData.friends.map(friend => friend.toUpperCase() === username.toUpperCase())) {
29+
if (request.user.friendsData.friends.map(friend => friend.toUpperCase() === username.toUpperCase()).length === 0) {
3030
return response.status(401).json({ error: 'You do not have this user added.' });
3131
}
3232
await user.populate({
@@ -66,7 +66,7 @@ userRouter.post('/acceptFriendRequest/:username', async (request: AuthenticatedR
6666
if (!requestUser) {
6767
return response.status(400).json({ error: 'User does not exist.' });
6868
}
69-
if (!user.friendsData.friendRequests.map(request => request.toUpperCase() === username.toUpperCase())) {
69+
if (user.friendsData.friendRequests.map(request => request.toUpperCase() === username.toUpperCase()).length === 0) {
7070
return response.status(400).json({ error: 'User never recieved friend request form this user.' });
7171
}
7272
user.friendsData.friendRequests = user.friendsData.friendRequests.filter(request => request.toUpperCase() !== username.toUpperCase());
@@ -85,7 +85,7 @@ userRouter.post('/rejectFriendRequest/:username', async (request: AuthenticatedR
8585
if (!user) {
8686
return response.status(401).json({ error: 'User/token not found' });
8787
}
88-
if (!user.friendsData.friendRequests.map(friend => friend.toUpperCase() === username)) {
88+
if (user.friendsData.friendRequests.map(friend => friend.toUpperCase() === username).length === 0) {
8989
return response.status(400).json({ error: 'User never recieved friend request from this user.' });
9090
}
9191
user.friendsData.friendRequests = user.friendsData.friendRequests.filter(request => request.toUpperCase() !== username);
@@ -104,7 +104,7 @@ userRouter.post('/removeFriend/:username', async (request: AuthenticatedRequest,
104104
if (!requestUser) {
105105
return response.status(400).json({ error: 'User does not exist.' });
106106
}
107-
if (!user.friendsData.friends.map(friend => friend.toUpperCase() === username.toUpperCase())) {
107+
if (user.friendsData.friends.map(friend => friend.toUpperCase() === username.toUpperCase()).length === 0) {
108108
return response.status(400).json({ error: 'This user was never added.' });
109109
}
110110
user.friendsData.friends = user.friendsData.friends.filter(request => request.toUpperCase() !== username.toUpperCase());

front/taskwizard-front/src/pages/VisitorDashboard.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ function VisitorDashboard () {
9494
console.log('Connected to server');
9595
if (username) {
9696
const user = await getFriendUser(username);
97+
console.log(user);
9798
if (!user.id) {
9899
navigate('/dashboard');
99100
}

0 commit comments

Comments
 (0)