diff --git a/src/components/IncompleteEvent/IncompleteEvent.jsx b/src/components/IncompleteEvent/IncompleteEvent.jsx index 0024070..b5d83c7 100644 --- a/src/components/IncompleteEvent/IncompleteEvent.jsx +++ b/src/components/IncompleteEvent/IncompleteEvent.jsx @@ -5,25 +5,13 @@ import getAllEvents from "../../utils/event/getAllEvents"; function IncompleteEvent() { const [events, setEvents] = useState([]); const [loading, setLoading] = useState(true); - const [error, setError] = useState(null); useEffect(() => { const fetchEvents = async () => { - try { - const data = await getAllEvents(); - if (data) { - setEvents(data); - } else { - setError("Aucun événement trouvé."); - } - } catch (err) { - setError("Erreur lors de la récupération des événements."); - console.error(err); - } finally { - setLoading(false); - } + const data = await getAllEvents(); + setEvents(data?.data || data || []); + setLoading(false); }; - fetchEvents(); }, []); @@ -40,48 +28,29 @@ function IncompleteEvent() { ); } - if (error) { - return ( -
{error}
-- {new Date(event.start).toLocaleDateString("fr-FR")} - {new Date(event.end).toLocaleDateString("fr-FR")} -
-{event.description}
-Aucun événement disponible.
+ {events.map((event) => ( ++ {new Date(event.start).toLocaleDateString("fr-FR")} - {new Date(event.end).toLocaleDateString("fr-FR")} +
+{event.description}
+{member.name} {member.lastname}
-{error}
}Aucun membre en attente
- )} + {pendingMembers.length === 0 &&Aucun membre en attente
} {pendingMembers.map((member) => ( -- {member.name} {member.lastname} -
- +{member.name} {member.lastname}
Chargement...
; + returnNombre d’événements : {eventsCount}
; +} +export default EventsCounter; diff --git a/src/utils/users/deleteUser.js b/src/utils/users/deleteUser.js index b8ae5b2..5c4a8d3 100644 --- a/src/utils/users/deleteUser.js +++ b/src/utils/users/deleteUser.js @@ -1,14 +1,35 @@ -export default async function deleteUser(userId) { - const res = await fetch( - `http://${import.meta.env.VITE_API_URL}/api/users/${userId}`, - { - method: "DELETE", - credentials: "include", - headers: { - Accept: "application/json", - }, - } - ); +import getXSRFToken from "../getXSRF"; - return res.ok; +export default async function deleteUser(userId) { + + const csrfToken = await getXSRFToken(); + + try { + + + const res = await fetch( + `http://${import.meta.env.VITE_API_URL}/api/users/${userId}`, + { + method: "DELETE", + credentials: "include", + headers: { + Accept: "application/json", + "X-XSRF-TOKEN": csrfToken, + }, + } + ); + + if (!res.ok) { + let message = "Erreur backend"; + try { + const errorData = await res.json(); + message = errorData.message || message; + } catch {} + return { success: false, message }; + } + return { success: true }; + } catch (err) { + console.error(err); + return { success: false, message: "Erreur réseau" }; + } } diff --git a/src/utils/users/validateUser b/src/utils/users/validateUser deleted file mode 100644 index f5611c8..0000000 --- a/src/utils/users/validateUser +++ /dev/null @@ -1,14 +0,0 @@ -export default async function validateUser(userId) { - const res = await fetch( - `http://${import.meta.env.VITE_API_URL}/api/users/${userId}/validate`, - { - method: "POST", - credentials: "include", - headers: { - Accept: "application/json", - }, - } - ); - - return res.ok; -} diff --git a/src/utils/users/validateUser.js b/src/utils/users/validateUser.js new file mode 100644 index 0000000..21f4d1e --- /dev/null +++ b/src/utils/users/validateUser.js @@ -0,0 +1,27 @@ +import getXSRFToken from "../getXSRF.js"; + +export default async function validateUser(userId) { + const csrfToken = await getXSRFToken(); + try { + const res = await fetch( + `http://${import.meta.env.VITE_API_URL}/api/users/${userId}/validate`, + { + method: "POST", + credentials: "include", + headers: { + Accept: "application/json", + 'X-XSRF-TOKEN': csrfToken, + }, + } + ); + if (!res.ok) { + const errorData = await res.json(); + console.error("Erreur backend:", errorData); + return false; + } + return true; + } catch (err) { + console.error("Erreur réseau:", err); + return false; + } +}