Skip to content
This repository was archived by the owner on Oct 30, 2025. It is now read-only.

Commit 8b15ece

Browse files
committed
Refactors code structure
1 parent 2bca65e commit 8b15ece

1 file changed

Lines changed: 33 additions & 32 deletions

File tree

client/src/components/RoomInfo/index.js

Lines changed: 33 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -110,18 +110,36 @@ export default function RoomInfo(props) {
110110
try {
111111
// User is logged in: Fetch channel members using their tokens
112112
if (props.authState.isLoggedIn) {
113-
const channelMembersResponse = await axios({
114-
method: "get",
115-
url: `${rcApiDomain}/api/v1/channels.members`,
116-
headers: {
117-
"X-Auth-Token": Cookies.get("rc_token"),
118-
"X-User-Id": Cookies.get("rc_uid"),
119-
},
120-
params: {
121-
roomName: props.location.pathname.split("/")[2],
122-
},
123-
});
124-
setRoomMembers(channelMembersResponse.data.members);
113+
// If user is viewing a public room
114+
if (props.location.pathname.split("/")[1] === "channel") {
115+
const channelMembersResponse = await axios({
116+
method: "get",
117+
url: `${rcApiDomain}/api/v1/channels.members`,
118+
headers: {
119+
"X-Auth-Token": Cookies.get("rc_token"),
120+
"X-User-Id": Cookies.get("rc_uid"),
121+
},
122+
params: {
123+
roomName: props.location.pathname.split("/")[2],
124+
},
125+
});
126+
setRoomMembers(channelMembersResponse.data.members);
127+
}
128+
// If user is viewing a private room
129+
else {
130+
const groupMembersResponse = await axios({
131+
method: "get",
132+
url: `${rcApiDomain}/api/v1/groups.members`,
133+
headers: {
134+
"X-Auth-Token": Cookies.get("rc_token"),
135+
"X-User-Id": Cookies.get("rc_uid"),
136+
},
137+
params: {
138+
roomName: props.location.pathname.split("/")[2],
139+
},
140+
});
141+
setRoomMembers(groupMembersResponse.data.members);
142+
}
125143
} else {
126144
// User not logged in: Fetch channel members through backend
127145
const anonymousModeChannelMembers = await axios({
@@ -137,26 +155,9 @@ export default function RoomInfo(props) {
137155
setRoomMembers(anonymousModeChannelMembers.data.data);
138156
}
139157
} catch (error) {
140-
// Room is private
141-
try {
142-
// User is a member of the private room
143-
const groupMembersResponse = await axios({
144-
method: "get",
145-
url: `${rcApiDomain}/api/v1/groups.members`,
146-
headers: {
147-
"X-Auth-Token": Cookies.get("rc_token"),
148-
"X-User-Id": Cookies.get("rc_uid"),
149-
},
150-
params: {
151-
roomName: props.location.pathname.split("/")[2],
152-
},
153-
});
154-
setRoomMembers(groupMembersResponse.data.members);
155-
} catch (error) {
156-
// User is logged out and not a member of the private room
157-
console.log(error);
158-
setIsNotAccessible(true);
159-
}
158+
// User is logged out and not a member of the private room
159+
console.log(error);
160+
setIsNotAccessible(true);
160161
}
161162
};
162163
ghRepoInfo();

0 commit comments

Comments
 (0)