clean hard code

This commit is contained in:
trochas
2026-01-08 14:14:56 +01:00
parent 1b44116936
commit 78b82fcfee
2 changed files with 25 additions and 27 deletions

View File

@@ -20,33 +20,13 @@ import ObjectUser from "./object/user";
if (user.role === "athlete") return null;
const athleteMap: Map<number, Athlete> = new Map();//TODO
user.sessions.forEach(session => {
session.athletes?.forEach(a => athleteMap.set(a.id, a));
});
const allAthletes: Athlete[] = Array.from(athleteMap.values());
const allAthletes: Athlete[] = [];
const activiteMap: Map<number, Activite> = new Map();
user.sessions.forEach(session => {
session.activites?.forEach(act => activiteMap.set(act.id, act));
});
const allActivites: Activite[] = Array.from(activiteMap.values());
const allActivites: Activite[] = [];
const coachMap: Map<number, Coach> = new Map();
user.sessions.forEach(session => {
if (session.coach) {
coachMap.set(session.coach.id, session.coach);
}
});
const allCoachs: Coach[] = [];
const allCoachs: Coach[] = Array.from(coachMap.values());
const sessionMap: Map<number, Session> = new Map();
user.sessions.forEach(session => {
sessionMap.set(session.id, session);
});
const allSessions: Session[] = Array.from(sessionMap.values());
const allSessions: Session[] = [];
const ligneMap: Map<number, Ligne> = new Map();
user.sessions.forEach(session => {

View File

@@ -1,5 +1,6 @@
import api, { activiteService, sessionService } from "./api";
import { Activite, Admin, Athlete, Coach, Session, User } from "./classes";
import Keycloak from 'keycloak-js'
//debug:
export function delay(ms: number): Promise<void> {
@@ -13,16 +14,33 @@ export function delay(ms: number): Promise<void> {
/*
retourne l'utilisateur lié à l'identifiant keyloack
*/
export async function getUser(id:number): Promise<User|null>{
export async function getUser(keycloak:Keycloak): Promise<User|null>{
try {
const response = await api.get<User>(`/users/${id}`);
return response.data;
const roles = keycloak.tokenParsed?.realm_access?.roles
if(roles!=null){
if(roles.includes("admin")){
const response = await api.get<any>(`/TODO`);
return response.data;
}
else if(roles.includes("coach")){
const response = await api.get<any>(`/TODO`);
return response.data;
}
else if(roles.includes("athletes")){
const response = await api.get<any>(`/TODO`);
return response.data;
}
console.error("Error roles inconnu");
}
return null;
}
catch (error) {
console.error("Error fetching user:", error);
return null;
}
}
/*
retourne toutes les Session dont l'user est inscrit
*/