diff --git a/front_end/src/components/edt_session.tsx b/front_end/src/components/edt_session.tsx
index 48e34db..7459e85 100644
--- a/front_end/src/components/edt_session.tsx
+++ b/front_end/src/components/edt_session.tsx
@@ -51,7 +51,7 @@ function EdtSession({session}:Props){
handleOpen()}>
{hoursToString(sDate)}
- {!session.isRecurrent &&
recurrent
}
+ {session.isRecurrent &&
recurrent
}
{session.name}
diff --git a/front_end/src/components/ressourceList.tsx b/front_end/src/components/ressourceList.tsx
index 51ef72b..c597865 100644
--- a/front_end/src/components/ressourceList.tsx
+++ b/front_end/src/components/ressourceList.tsx
@@ -1,8 +1,9 @@
-import { Athlete, Activite, Coach } from "../classes";
+import { Athlete, Activite, Coach, Session } from "../classes";
type AthleteListProps = { athletes: Athlete[] };
type ActiviteListProps = { activites: Activite[] };
type CoachListProps = { coachs: Coach[] };
+type SessionListProps = { sessions: Session[]};
function AthleteList({ athletes }: AthleteListProps) {
return (
@@ -52,4 +53,28 @@ function CoachList({ coachs }: CoachListProps) {
);
}
-export { AthleteList, ActiviteList, CoachList };
\ No newline at end of file
+function SessionList({ sessions }: SessionListProps) {
+ return (
+
+ {sessions.map((sessions) => (
+ -
+
+ Nom: {sessions.name}
+
+
+ Groupe: {sessions.groupe}
+
+
+ Recurrent: {sessions.isRecurrent ? "Oui" : "Non"}
+
+
+ Coach: {sessions.coach ? sessions.coach.nom : "Pas de coach sur la séance"}
+
+
+
+ ))}
+
+ );
+}
+
+export { AthleteList, ActiviteList, CoachList , SessionList };
\ No newline at end of file
diff --git a/front_end/src/components/ressourcePanel.tsx b/front_end/src/components/ressourcePanel.tsx
index 1e99690..b46469e 100644
--- a/front_end/src/components/ressourcePanel.tsx
+++ b/front_end/src/components/ressourcePanel.tsx
@@ -1,13 +1,14 @@
import { useState } from "react";
import { useLocalData } from "../context/useLocalData";
-import { AthleteList, ActiviteList, CoachList} from "./ressourceList";
-import { Activite, Athlete, Coach } from "../classes";
+import { AthleteList, ActiviteList, CoachList, SessionList} from "./ressourceList";
+import { Activite, Athlete, Coach , Session } from "../classes";
export default function RessourcePanel() {
const { user } = useLocalData();
const [showAthletes, setShowAthletes] = useState(false);
const [showActivites, setShowActivites] = useState(false);
- const [showCoach,setShowCoach] = useState(false);
+ const [showCoachs,setShowCoachs] = useState(false);
+ const [showSessions, setShowSessions] = useState(false);
console.log("Rôle utilisateur:", user.role);
if (user.role === "Athlete") return null;
@@ -33,21 +34,41 @@ export default function RessourcePanel() {
const allCoachs: Coach[] = Array.from(coachMap.values());
+ const sessionMap: Map = new Map();
+ user.sessions.forEach(session => {
+ sessionMap.set(session.id, session);
+ });
+
+ const allSessions: Session[] = Array.from(sessionMap.values());
+
function onAthletesClick(): void {
setShowAthletes(prev => !prev);
setShowActivites(false);
- setShowCoach(false);
+ setShowCoachs(false);
+ setShowSessions(false);
+
}
function onActivitiesClick(): void {
setShowActivites(prev => !prev);
setShowAthletes(false);
- setShowCoach(false);
+ setShowCoachs(false);
+ setShowSessions(false);
+
}
function onCoachClick(): void {
- setShowCoach(prev => !prev);
+ setShowCoachs(prev => !prev);
setShowActivites(false);
setShowAthletes(false);
+ setShowSessions(false);
+
+ }
+
+ function onSessionClick(): void {
+ setShowSessions(prev => !prev);
+ setShowActivites(false);
+ setShowAthletes(false);
+ setShowCoachs(false);
}
@@ -60,12 +81,13 @@ export default function RessourcePanel() {
if (v === "athletes") onAthletesClick();
else if (v === "activites") onActivitiesClick();
else if (v === "coach") onCoachClick();
- else {setShowAthletes(false); setShowActivites(false); setShowCoach(false)}
+ else if (v === "session") onSessionClick();
+ else {setShowAthletes(false); setShowActivites(false); setShowCoachs(false); setShowSessions(false)}
}}>
-
{user.role === "Admin" && }
+
{showAthletes && (
@@ -82,13 +104,20 @@ export default function RessourcePanel() {
)}
- {showCoach && (
-
+ {showCoachs && (
+
Liste des coachs
)}
+ {showSessions && (
+
+
Liste des sessions
+
+
+ )}
+