Generate a random room name on the client side and set the first created room name as the default

This commit is contained in:
NouhailaAater 2025-02-24 03:50:15 -05:00
parent 94c728fa09
commit bf2e6502f3
2 changed files with 11 additions and 26 deletions

View file

@ -19,8 +19,18 @@ export const RoomProvider = ({ children }: { children: React.ReactNode }) => {
useEffect(() => {
const loadRooms = async () => {
const userRooms = await ApiService.getUserRooms();
setRooms(userRooms as RoomType[]);
const roomsList = userRooms as RoomType[];
setRooms(roomsList);
if (roomsList.length > 0) {
const defaultRoom = roomsList[1]; // Set the first created room as the selected one
setSelectedRoom(defaultRoom);
localStorage.setItem('selectedRoomId', defaultRoom._id);
} else {
const randomRoomName = `Room-${Math.floor(Math.random() * 10000)}`;
await createRoom(randomRoomName);
}
};
loadRooms();
}, []);

View file

@ -36,20 +36,6 @@ const setupWebsocket = (io) => {
socket.emit("create-failure", `La salle ${roomName} existe déjà.`);
console.log(`Échec de création : ${roomName} existe déjà`);
}
} else {
const roomName = generateRoomName();
console.log(`Génération d'une salle aléatoire : ${roomName}`);
if (!io.sockets.adapter.rooms.get(roomName)) {
socket.join(roomName);
socket.emit("create-success", roomName);
console.log(`Salle créée avec succès : ${roomName}`);
} else {
socket.emit(
"create-failure",
"Échec de création de la salle aléatoire"
);
console.log(`Échec de création de la salle aléatoire`);
}
}
console.log(
"Salles existantes après la tentative de création : ",
@ -129,17 +115,6 @@ const setupWebsocket = (io) => {
});
});
});
const generateRoomName = (length = 6) => {
const characters = "0123456789";
let result = "";
for (let i = 0; i < length; i++) {
result += characters.charAt(
Math.floor(Math.random() * characters.length)
);
}
return result;
};
};
module.exports = { setupWebsocket };