calendar widget 5

This commit is contained in:
Alma 2025-04-13 18:30:36 +02:00
parent 0df69f6969
commit 8a8bfb4901

View File

@ -21,30 +21,43 @@ type Event = {
};
export function CalendarWidget() {
const { data: session } = useSession();
const { data: session, status } = useSession();
const [events, setEvents] = useState<Event[]>([]);
const [loading, setLoading] = useState(true);
const [error, setError] = useState<string | null>(null);
useEffect(() => {
if (!session) return;
console.log("Calendar Widget - Session Status:", status);
console.log("Calendar Widget - Session Data:", session);
if (!session) {
console.log("Calendar Widget - No session, skipping fetch");
return;
}
const fetchUpcomingEvents = async () => {
try {
console.log("Calendar Widget - Starting to fetch events");
setLoading(true);
// Fetch calendars with events
const response = await fetch('/api/calendars');
console.log("Calendar Widget - Making API request to /api/calendars");
const response = await fetch('/api/calendars', {
headers: {
'Content-Type': 'application/json',
},
});
if (!response.ok) {
console.error("Calendar API response not OK:", response.status, response.statusText);
console.error("Calendar Widget - API response not OK:", response.status, response.statusText);
throw new Error("Impossible de charger les événements");
}
const calendarsData = await response.json();
console.log("Raw calendars data:", calendarsData);
console.log("Calendar Widget - Raw calendars data:", calendarsData);
if (!Array.isArray(calendarsData)) {
console.error("Calendars data is not an array:", calendarsData);
console.error("Calendar Widget - Calendars data is not an array:", calendarsData);
throw new Error("Format de données invalide");
}