login fix

This commit is contained in:
tuanvu
2026-01-08 16:36:52 +01:00
parent ba45985394
commit 8a2cfbd2f7
2 changed files with 20 additions and 8 deletions

View File

@@ -4,6 +4,7 @@ import { Athlete, User } from '../classes';
import { useLocalData } from '../context/useLocalData';
import { postAthlete } from '../requetes';
import { clearAuthToken, setAuthToken } from '../api';
import { AthleteDTO } from '../classesDTO';
export const Login =() =>{
const {user,setUser} = useLocalData()
@@ -11,12 +12,23 @@ export const Login =() =>{
useEffect(() => {
const syncAndLoadUser = async () => {
const newAthlete:Athlete = new Athlete()
const athlete:Athlete = await postAthlete(newAthlete)
setAuthToken(keycloak.token);
setUser(athlete);
if (keycloak.authenticated && keycloak.token && keycloak.tokenParsed) {
try {
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 newAthleteDTO: AthleteDTO =newAthlete.toDTO();
setAuthToken(keycloak.token);
const athlete: Athlete = await postAthlete(newAthlete);
setUser(athlete);
} catch (error) {
console.error("Error :", error);
}
}
};
/*postAthlete
if (keycloak.authenticated && keycloak.token) {
const tokenParsed = keycloak.tokenParsed;
@@ -44,7 +56,7 @@ export const Login =() =>{
console.error("Sync fetch failed:", error);
}
}*/
};
syncAndLoadUser();
}, [keycloak.authenticated, keycloak.token, setUser]);

View File

@@ -128,7 +128,7 @@ export async function postActivityAPI(session: Session, activity: Activite){
export async function postAthlete(athlete: Athlete):Promise<Athlete>{
try {
const response = await api.post<Athlete>("/athlete/create/",athlete);
const response = await api.post<Athlete>("/athlete/create/",athlete.toDTO);
console.log(response);
return response.data;
} catch (error) {