From e52ba2fe3b6fc897aff3efc442caddaf5e83baf6 Mon Sep 17 00:00:00 2001 From: trochas Date: Fri, 9 Jan 2026 13:38:50 +0100 Subject: [PATCH] login presque fix --- .../FrisbYEE/rest/CoachResource.java | 1 + front_end/src/classes.tsx | 2 +- front_end/src/requetes.tsx | 40 +++++++++---------- 3 files changed, 22 insertions(+), 21 deletions(-) diff --git a/back_end/src/main/java/hackathon/FrisbYEE/rest/CoachResource.java b/back_end/src/main/java/hackathon/FrisbYEE/rest/CoachResource.java index 7cf3d88..fc59384 100644 --- a/back_end/src/main/java/hackathon/FrisbYEE/rest/CoachResource.java +++ b/back_end/src/main/java/hackathon/FrisbYEE/rest/CoachResource.java @@ -101,6 +101,7 @@ public class CoachResource { //coach.setId(dto.getId()); coach.setKeycloakId(dto.getId_keycloak()); coach.setName(dto.getName()); + coach.setRole(hackathon.FrisbYEE.jpa.metier.Role.coach); return coach; } } diff --git a/front_end/src/classes.tsx b/front_end/src/classes.tsx index ccfb12e..e9c4ebe 100644 --- a/front_end/src/classes.tsx +++ b/front_end/src/classes.tsx @@ -105,7 +105,7 @@ export class Coach extends User{ id_keycloak: this.keycloakId, name: this.nom, prenom: this.prenom, - sessionIds: this.sessionsID, + sessionIds: this.sessionsID , }; return dto; } diff --git a/front_end/src/requetes.tsx b/front_end/src/requetes.tsx index 6b3c4a8..2f293ab 100644 --- a/front_end/src/requetes.tsx +++ b/front_end/src/requetes.tsx @@ -22,32 +22,32 @@ export async function loginOrRegister(keycloak:Keycloak): Promise{ const roles = keycloak.tokenParsed?.realm_access?.roles if(roles!=null){ if(roles.includes("admin")){ - const id = keycloak.tokenParsed?.sub; - if(id!=null){ - const response = await athleteService.getByKeycloakId(id); - const admin = new Admin(response.data); - return admin; - } + const id = keycloak.tokenParsed?.sub; + if(id!=null){ + const response = await athleteService.create(id); + const admin = new Admin(response.data); + return admin; } + } else if(roles.includes("coach")){ - const id = keycloak.tokenParsed?.sub; - if(id!=null){ - const response = await coachService.getByKeycloakId(id); + const newCoach: Coach = new Coach(); + newCoach.keycloakId = keycloak.tokenParsed.sub || ""; + newCoach.email = keycloak.tokenParsed.email || ""; + newCoach.nom = keycloak.tokenParsed.family_name || ""; + newCoach.prenom = keycloak.tokenParsed.given_name || ""; + const response = await coachService.create(newCoach.toDTO()); const coach = new Coach(response.data); return coach; + } - } - else if(roles.includes("athlete")){ - console.error("role = Athlete"); - const newAthlete: Athlete = new Athlete(); - newAthlete.keycloakId = keycloak.tokenParsed.sub || ""; - newAthlete.email = keycloak.tokenParsed.email || ""; - newAthlete.nom = keycloak.tokenParsed.family_name || ""; - newAthlete.prenom = keycloak.tokenParsed.given_name || ""; - const response = await athleteService.create(newAthlete.toDTO()); - console.log(response); + else if(roles.includes("athlete")){ + const newAthlete: Athlete = new Athlete(); + newAthlete.keycloakId = keycloak.tokenParsed.sub || ""; + newAthlete.email = keycloak.tokenParsed.email || ""; + newAthlete.nom = keycloak.tokenParsed.family_name || ""; + newAthlete.prenom = keycloak.tokenParsed.given_name || ""; + const response = await athleteService.create(newAthlete.toDTO()); const athlete = new Athlete(response.data); - console.log(athlete); return athlete; } else console.error("Error : role inconnu");