Skip to content

Commit c0599e3

Browse files
committed
Merge branch 'dev' into rose
2 parents cc6c82b + 2796513 commit c0599e3

File tree

4 files changed

+17
-5
lines changed

4 files changed

+17
-5
lines changed

app/src/components/left/RoomsContainer.tsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@ import {
1313
addChild,
1414
changeFocus,
1515
deleteChild,
16-
changePosition
16+
changePosition,
17+
resetState
1718
} from '../../redux/reducers/slice/appStateSlice';
1819
import {
1920
setRoomCode,
@@ -136,7 +137,6 @@ const RoomsContainer = () => {
136137
//edge case: if userList is not empty, reset it to empty array
137138
if (userList.length !== 0) dispatch(setUserList([]));
138139
handleUserEnteredRoom(roomCode);
139-
140140
dispatch(setRoomCode(roomCode)); //?
141141
dispatch(setUserJoined(true)); //setting joined room to true for rendering leave room button
142142
}
@@ -145,6 +145,7 @@ const RoomsContainer = () => {
145145
let socket = getSocket();
146146
if (socket) {
147147
socket.disconnect(); //disconnecting socket from server
148+
console.log(socket);
148149
socket = null;
149150
console.log('user leaves the room');
150151
}
@@ -153,6 +154,7 @@ const RoomsContainer = () => {
153154
dispatch(setUserName(''));
154155
dispatch(setUserList([]));
155156
dispatch(setUserJoined(false)); //setting joined to false so join room UI appear
157+
dispatch(resetState(''));
156158
}
157159

158160
//checking empty input field (not including spaces)

app/src/helperFunctions/socket.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,11 @@ import config from '../../../config';
1616
let socket = null;
1717

1818
export const initializeSocket = () => {
19-
if (socket) socket.disconnect();
19+
if (socket) socket.connect();
2020
if (!socket) {
2121
socket = io(config.API_BASE_URL, { transports: ['websocket'] });
2222
console.log('A user connected');
23+
console.log('socket:', socket);
2324
}
2425
};
2526

app/src/redux/reducers/slice/userSlice.ts

Whitespace-only changes.

server/server.ts

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -163,15 +163,24 @@ io.on('connection', (client) => {
163163

164164
//disconnecting functionality
165165
client.on('disconnecting', () => {
166-
// the client.rooms Set contains at least the socket ID
167166
const roomCode = Array.from(client.rooms)[1]; //grabbing current room client was in when disconnecting
167+
const userList = Object.keys(roomLists[roomCode]); //[ bHhFDmzPGam, mqri45c94E3 ] order is not perserved?
168+
const hostID = userList[0];
169+
// the client.rooms Set contains at least the socket ID
170+
console.log(`${client.id} will be leaving the room`);
171+
console.log(client.id === hostID);
172+
console.log(roomLists[roomCode]);
168173
delete roomLists[roomCode][client.id];
174+
console.log(roomLists[roomCode]);
169175
//if room empty, delete room from room list
170176
if (!Object.keys(roomLists[roomCode]).length) {
171177
delete roomLists[roomCode];
172178
} else {
173179
//else emit updated user list
174-
io.to(roomCode).emit('updateUserList', roomLists[roomCode]);
180+
io.to(roomCode).emit(
181+
'updateUserList',
182+
Object.values(roomLists[roomCode])
183+
);
175184
}
176185
});
177186

0 commit comments

Comments
 (0)