mirror of
https://github.com/ets-cfuhrman-pfe/EvalueTonSavoir.git
synced 2025-08-11 21:23:54 -04:00
Generate a random room name on the client side and set the first created room name as the default
This commit is contained in:
parent
94c728fa09
commit
bf2e6502f3
2 changed files with 11 additions and 26 deletions
|
|
@ -19,8 +19,18 @@ export const RoomProvider = ({ children }: { children: React.ReactNode }) => {
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const loadRooms = async () => {
|
const loadRooms = async () => {
|
||||||
const userRooms = await ApiService.getUserRooms();
|
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();
|
loadRooms();
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -36,20 +36,6 @@ const setupWebsocket = (io) => {
|
||||||
socket.emit("create-failure", `La salle ${roomName} existe déjà.`);
|
socket.emit("create-failure", `La salle ${roomName} existe déjà.`);
|
||||||
console.log(`Échec de création : ${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(
|
console.log(
|
||||||
"Salles existantes après la tentative de création : ",
|
"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 };
|
module.exports = { setupWebsocket };
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue