From 9814fc411a7b53aae0c223bfd96a1be17957532f Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 9 Dec 2025 03:51:16 +0000 Subject: [PATCH] Auto deploy: 2025-12-09 03:51:13 --- src/components/Map/MapView.jsx | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/src/components/Map/MapView.jsx b/src/components/Map/MapView.jsx index 4f3f2c9..c83e31a 100644 --- a/src/components/Map/MapView.jsx +++ b/src/components/Map/MapView.jsx @@ -306,7 +306,7 @@ export default function MapView() { } }, [mainFilter, bottomCategories, subFilter]); - /* ------------ FACTEUR EN COMMUN: CREATION D'UN MARKER POUR UN POST -------------- */ + /* ------------ FACTEUR COMMUN: CREATION D'UN MARKER POUR UN POST -------------- */ const createMarkerForPost = (post) => { const map = mapRef.current; if (!map) return; @@ -432,7 +432,8 @@ export default function MapView() { if (cancelled) return; - // ici on recharge la vue => on enlève tout puis on remet + // *** ICI: les filtres contrôlent TOUT *** + // On efface tous les markers, et on remet EXACTEMENT ce que le backend renvoie. markersRef.current.forEach((m) => m.marker.remove()); markersRef.current = []; expandedElRef.current = null; @@ -479,13 +480,18 @@ export default function MapView() { if (msg.type === "new_post" && msg.post) { const p = msg.post; - // Optionnel: respecter les filtres actuels + // Respecte les filtres actuels + + // 1) CATEGORY const catCode = categoryCode(mainFilter); if (catCode && p.category && p.category.toUpperCase() !== catCode) { return; } - // Position: ne l'afficher que s'il est dans le rayon courant + // 2) TIME filter : on fait confiance au backend (p.created_at récent) + // Si ton backend ne renvoie pas created_at, on laisse passer. + + // 3) ZONE: ne l'afficher que s'il est dans le rayon courant if (viewParams.center && viewParams.radiusKm) { const coords = getCoords(p); if (coords) { @@ -516,7 +522,7 @@ export default function MapView() { ws.close(); } }; - }, [mainFilter, viewParams]); + }, [mainFilter, timeFilter, viewParams]); /* ------------ ACTIONS UI -------------- */ @@ -597,7 +603,7 @@ export default function MapView() { await createPost(payload); setIsSaving(false); setIsCreating(false); - // On ne refetch pas tout ici, on laisse le WS rajouter le nouveau + // On laisse le WS rajouter le nouveau } catch (e) { console.error("createPost error:", e); setIsSaving(false);