Files
2024-DEV-BUT3/src/components/rooms/room-list.jsx

44 lines
1.2 KiB
React
Raw Normal View History

2024-05-12 21:32:30 +02:00
import React, { useState, useEffect } from "react";
2024-05-13 00:33:13 +02:00
import "../../assets/styles/room-list.css";
import { RoomBox } from "../../components/rooms/roomBox";
2024-05-13 00:13:52 +02:00
import { formatRoomStats } from "../../api/room";
2024-05-12 21:32:30 +02:00
2024-05-13 00:33:13 +02:00
// Fonction pour diviser le tableau d'items en rang<6E>es
2024-05-12 21:32:30 +02:00
const chunkArray = (arr, size) => {
const chunkedArr = [];
for (let i = 0; i < arr.length; i += size) {
chunkedArr.push(arr.slice(i, i + size));
}
return chunkedArr;
};
// Composant d'affichage de la page
2024-05-13 00:13:52 +02:00
export const RoomList = ({ statsParam, onRoomClick }) => {
2024-05-12 21:32:30 +02:00
const [rooms, setRooms] = useState([]);
2024-05-13 00:33:13 +02:00
const [selectedRoom, setSelectedRoom] = useState("all");
useEffect(() => {
if (statsParam.rooms) {
console.log(statsParam.rooms);
let formatedStats = formatRoomStats(statsParam);
setRooms(formatedStats.rooms);
}
}, [statsParam]);
const handleRoomClick = (roomId) => {
onRoomClick(roomId);
2024-05-12 21:32:30 +02:00
};
return (
2024-05-13 00:33:13 +02:00
<div>
<h2>Liste des chambres</h2>
2024-05-12 21:32:30 +02:00
<div className="list-container">
2024-05-13 00:33:13 +02:00
{rooms &&
rooms.map((room) => (
<RoomBox room={room} key={room._id} onRoomClick={handleRoomClick} />
))}
2024-05-12 21:32:30 +02:00
</div>
2024-05-13 00:33:13 +02:00
</div>
2024-05-12 21:32:30 +02:00
);
2024-05-13 00:33:13 +02:00
};