diff --git a/src/App.tsx b/src/App.tsx index 542ebfd..0e8cf9a 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -133,7 +133,7 @@ export default function App() { )} /> )} /> ([]) const fetcher = useAppFetcher() const navigate = useNavigate() + const { teamId } = useParams() async function handleSubmit(e : FormEvent){ e.preventDefault() - const { name, mainColor,secondColor,picture } = Object.fromEntries( + const { email,role} = Object.fromEntries( new FormData(e.target as HTMLFormElement), ) - + console.log(email,role) const response = await fetcher.fetchAPI( - "teams", - {name,mainColor,secondColor,picture}, + "teams/"+teamId+"/members", + {email,role}, "POST" ) if(response.ok){ const teamId = await response.json() - navigate("/team/"+teamId+"/members") + navigate("/team/"+teamId) return } @@ -51,7 +51,7 @@ export default function AddMemberPage() { return (
-

Créer une équipe

+

Ajouter un membre à votre équipe

{errors.map(({ type, messages }) => messages.map((message) => ( @@ -63,46 +63,28 @@ export default function AddMemberPage() {
- - - - - - - - -
- -
+ + + +
+ Rôle du membre dans l'équipe : +
+ + +
+
+ + +
+
+ +
+ +
diff --git a/src/pages/TeamPanel.tsx b/src/pages/TeamPanel.tsx index 65cf3c5..161c128 100644 --- a/src/pages/TeamPanel.tsx +++ b/src/pages/TeamPanel.tsx @@ -1,5 +1,4 @@ import "../style/team_panel.css" -import {BASE} from "../Constants" import {Member, MemberRole, Team, TeamInfo} from "../model/Team" import {useNavigate, useParams} from "react-router-dom" import {useAppFetcher, useUser} from "../App.tsx"; @@ -29,7 +28,6 @@ export default function TeamPanelPage() { } const isCoach = team.members.some(m=>m.user.id === user!.id && m.role === MemberRole.COACH) - console.log(isCoach,team,user) return ( -
-

- IQBall -

-
- {isCoach && } + {isCoach && } } -function CoachOptions({ id }: { id: number }) { +function CoachOptions({ id,userId }: { id: number,userId:number }) { + const navigate = useNavigate() + const fetcher = useAppFetcher() return (
-
) } @@ -145,7 +140,7 @@ function MembersDisplay({ @@ -167,6 +162,9 @@ function MemberDisplay({ idTeam: number currentUserId: number }) { + const fetcher = useAppFetcher() + const navigate = useNavigate() + return (
- confirm( - "Êtes-vous sûr de retirer ce membre de l'équipe?", - ) - ? (window.location.href = `${BASE}/team/${idTeam}/remove/${member.user.id}`) + confirm("Êtes-vous sûr de quitter cette équipe?") + ? (fetcher.fetchAPI( + "team/"+idTeam+"/members/"+member.user.id, + {}, + "DELETE" + ) + ) : {} }> Retirer @@ -193,10 +194,20 @@ function MemberDisplay({ {isCoach && currentUserId == member.user.id && (