Skip to content

Commit 935c77f

Browse files
committed
Merge branch 'dev' into sonya-exploring
2 parents d9f85f6 + 8d96cbc commit 935c77f

File tree

2 files changed

+62
-39
lines changed

2 files changed

+62
-39
lines changed

app/src/components/left/RoomsContainer.tsx

Lines changed: 62 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { Stack, Typography } from '@mui/material';
22
import { useDispatch, useSelector } from 'react-redux';
33

44
import Button from '@mui/material/Button';
5-
import React from 'react';
5+
import React, { useState } from 'react';
66
import { RootState } from '../../redux/store';
77
import TextField from '@mui/material/TextField';
88
import { allCooperativeState } from '../../redux/reducers/slice/appStateSlice';
@@ -21,8 +21,10 @@ import debounce from '../../../../node_modules/lodash/debounce.js';
2121
let socket;
2222
const { API_BASE_URL } = config;
2323
const RoomsContainer = () => {
24-
const [roomCode, setRoomCode] = React.useState('');
25-
const [confirmRoom, setConfirmRoom] = React.useState('');
24+
const [roomCode, setRoomCode] = useState('');
25+
const [confirmRoom, setConfirmRoom] = useState('');
26+
const [userJoined, setUserJoined] = useState(false); //setting up state for joinning a room
27+
const [emptyInput, setEmptyInput] = useState(false);
2628
const dispatch = useDispatch();
2729
const { state, joinedRoom } = useSelector((store: RootState) => ({
2830
state: store.appState,
@@ -115,10 +117,19 @@ const RoomsContainer = () => {
115117
setConfirmRoom((confirmRoom) => roomCode);
116118
// Call handleUserEnteredRoom when joining a room
117119
handleUserEnteredRoom(roomCode);
120+
setUserJoined(true); //setting joined room to true for rendering leave room button
118121
}
122+
123+
function leaveRoom() {
124+
if (socket) socket.disconnect(); //disconnecting socket
125+
dispatch(changeRoom(''));
126+
setRoomCode('');
127+
setUserJoined(false); //setting joined to false so join button appear
128+
}
129+
119130
return (
120131
<div>
121-
<Stack
132+
<Stack //stack styling for container
122133
spacing={2}
123134
sx={{
124135
paddingTop: '20px',
@@ -128,44 +139,57 @@ const RoomsContainer = () => {
128139
}}
129140
>
130141
{' '}
142+
{/* live room display */}
131143
<Typography variant="h6" color={'white'}>
132144
Live Room: {joinedRoom}
133145
</Typography>
134-
<TextField
135-
hiddenLabel
136-
id="filled-hidden-label-small"
137-
variant="filled"
138-
size="small"
139-
onChange={(e) => setRoomCode(e.target.value)}
140-
/>
141-
{/* <input
142-
type="text"
143-
style={{
144-
margin: '3px 5%',
145-
borderRadius: '5px',
146-
padding: '3px',
147-
width: '90%'
148-
}}
149-
placeholder="Room Code"
150-
onChange={(e) => setRoomCode(e.target.value)}
151-
></input> */}
152-
<Button
153-
variant="contained"
154-
onClick={() => joinRoom()}
155-
sx={{
156-
backgroundColor: '#ffffff',
157-
color: '#000000',
158-
'&:hover': {
159-
backgroundColor: '#C6C6C6',
160-
borderColor: '#0062cc',
161-
boxShadow: 'none'
162-
}
163-
}}
164-
>
165-
Join Room
166-
</Button>
146+
{/* Set up condition rendering depends on if user joined a room then render leave button if not render join button */}
147+
{userJoined ? (
148+
<Button
149+
variant="contained"
150+
onClick={() => leaveRoom()}
151+
sx={{
152+
backgroundColor: '#ffffff',
153+
color: '#000000',
154+
'&:hover': {
155+
backgroundColor: '#C6C6C6',
156+
borderColor: '#0062cc'
157+
}
158+
}}
159+
>
160+
{' '}
161+
Leave Room{' '}
162+
</Button>
163+
) : (
164+
<>
165+
<TextField
166+
hiddenLabel={true}
167+
id="filled-hidden-label-small"
168+
variant="filled"
169+
size="small"
170+
value={roomCode}
171+
placeholder="Input Room Number"
172+
onChange={(e) => setRoomCode(e.target.value)}
173+
/>
174+
<Button
175+
variant="contained"
176+
disabled={roomCode.trim() === ''}
177+
onClick={() => joinRoom()}
178+
sx={{
179+
backgroundColor: '#ffffff',
180+
color: '#000000',
181+
'&:hover': {
182+
backgroundColor: '#C6C6C6',
183+
borderColor: '#0062cc'
184+
}
185+
}}
186+
>
187+
{' '}
188+
Join Room{' '}
189+
</Button>
190+
</>
191+
)}
167192
</Stack>
168-
{/* <button onClick={() => joinRoom()}>Join Room</button> */}
169193
</div>
170194
);
171195
};

server/server.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,6 @@ app.post(
171171
sessionController.startSession,
172172
(req, res) => res.status(200).json({ sessionId: res.locals.ssid })
173173
);
174-
175174
//confirming whether user is logged in for index.tsx rendering
176175
app.get('/loggedIn', sessionController.isLoggedIn, (req, res) =>
177176
res.status(200).json(res.locals.loggedIn)

0 commit comments

Comments
 (0)