création de session fix en cours

This commit is contained in:
trochas
2026-01-09 12:58:20 +01:00
parent 9ac25f9ab6
commit 39e8be7427
5 changed files with 100 additions and 45 deletions

View File

@@ -1,52 +1,79 @@
import { useState } from "react";
import { useEffect, useState } from "react";
import { useLocalData } from "../context/useLocalData";
import { Activite, Athlete, Coach , Session, Ligne, Admin } from "../classes";
import {calculTempsDeJeuParLigne} from "../utils/ligneUtils";
import { keyboard } from "@testing-library/user-event/dist/keyboard";
import ObjectSession from "./object/session";
import ObjectUser from "./object/user";
import { getAllSessionsAPI } from "../requetes";
import { useKeycloak } from "@react-keycloak/web";
export type keyWord = "athletes" | "activites" | "coachs" | "sessions"| "lignes";
export default function RessourcePanel() {
const { keycloak } = useKeycloak();
const { user } = useLocalData();
//const user = getUserTest(); //TODO
const [value,setValue] = useState<keyWord>("athletes");
const [value,setValue] = useState<keyWord>("sessions");
if (user instanceof Athlete) return null;
const[allAthletes,setAllAthletes] = useState<Athlete[]>([]);
const[allCoachs,setAllCoachs] = useState<Coach[]>([]);
const[allSessions,setAllSessions] = useState<Session[]>([]);
const[allLignes,setAllLignes] = useState<Ligne[]>([]);
const allAthletes: Athlete[] = [];
const allActivites: Activite[] = [];
const allCoachs: Coach[] = [];
const allSessions: Session[] = [];
const allLignes: Ligne[] = [];
async function updateAthletes() {
}
async function updateCoachs() {
}
async function updateSessions() {
const sessions:Session[] = await getAllSessionsAPI();
}
async function updateLignes() {
}
useEffect(() => {
if(keycloak.authenticated){
updateSessions();
{(user instanceof Admin || user instanceof Coach) &&
updateAthletes();
updateCoachs();
updateLignes();
}
}
},[user])
return (
<div className="ressource_panel">
<div>
Sélectionner une ressource:
</div>
<select
onChange={(e) => {
const v = (e.target as HTMLSelectElement).value;
setValue(v as keyWord)
}}>
<option value="athletes">Athlètes</option>
<option value="activites">Activités</option>
{user instanceof Admin && <option value="coachs"> Coachs</option>}
<option value="sessions"> Sessions</option>
<option value="lignes"> Lignes</option>
</select>
{(user instanceof Admin || user instanceof Coach) &&
<div>
<div>
Sélectionner une ressource:
</div>
<select
onChange={(e) => {
const v = (e.target as HTMLSelectElement).value;
setValue(v as keyWord)
}}>
<option value="sessions"> Sessions</option>
{(user instanceof Admin || user instanceof Coach) &&<option value="athletes">Athlètes</option>}
{(user instanceof Admin || user instanceof Coach) &&<option value="activites">Activités</option>}
{(user instanceof Admin || user instanceof Coach) && <option value="coachs"> Coachs</option>}
{(user instanceof Admin || user instanceof Coach) &&<option value="lignes"> Lignes</option>}
</select>
</div>
}
<div className="edt_sessions_panel">
<h3>Liste des {value}</h3>
@@ -81,3 +108,4 @@ import ObjectUser from "./object/user";
</div>
);
}