From ca50fd2808f0f6dbad4dea642fa099ba0e504123 Mon Sep 17 00:00:00 2001 From: Dicken Date: Thu, 11 Jun 2026 08:10:18 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20xREL=20Badges=20persistent=20=E2=80=93?= =?UTF-8?q?=20onXrelLoaded=20Callback=20propagiert=20zu=20Media-Parent?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/tools/media.jsx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/frontend/src/tools/media.jsx b/frontend/src/tools/media.jsx index a306e17..af14b3e 100644 --- a/frontend/src/tools/media.jsx +++ b/frontend/src/tools/media.jsx @@ -125,8 +125,8 @@ export default function Media({ toast, mobile }) { {active?.desc} - {activeTool === 'kino' && } - {activeTool === 'demnächst' && } + {activeTool === 'kino' && setXrelIds(prev => new Set([...prev, ...ids]))} />} + {activeTool === 'demnächst' && setXrelIds(prev => new Set([...prev, ...ids]))} />} {activeTool === 'favoriten' && } @@ -256,7 +256,7 @@ function useFavIds() { } // ── Kino Grid – alle laufenden Filme ───────────────────────────────────────── -function KinoGrid({ onOpenModal, xrelIds }) { +function KinoGrid({ onOpenModal, xrelIds, onXrelLoaded }) { const [movies, setMovies] = useState([]); const [loading, setLoading] = useState(true); const [error, setError] = useState(''); @@ -273,7 +273,7 @@ function KinoGrid({ onOpenModal, xrelIds }) { if (ids) api(`/tools/media/xrel-cached?ids=${ids}`) .then(result => { const hits = Object.entries(result).filter(([,v])=>v).map(([k])=>Number(k)); - if (hits.length) setXrelIds(prev => new Set([...prev, ...hits])); + if (hits.length) onXrelLoaded?.(hits); }).catch(()=>{}); }) .catch(e => setError(e.message)) @@ -316,7 +316,7 @@ function KinoGrid({ onOpenModal, xrelIds }) { } // ── Demnächst – wochenweise Neustarts ──────────────────────────────────────── -function DemnächstGrid({ onOpenModal, xrelIds }) { +function DemnächstGrid({ onOpenModal, xrelIds, onXrelLoaded }) { const [groups, setGroups] = useState({}); const [loading, setLoading] = useState(true); const [error, setError] = useState(''); @@ -331,7 +331,7 @@ function DemnächstGrid({ onOpenModal, xrelIds }) { if (ids) api(`/tools/media/xrel-cached?ids=${ids}`) .then(result => { const hits = Object.entries(result).filter(([,v])=>v).map(([k])=>Number(k)); - if (hits.length) setXrelIds(prev => new Set([...prev, ...hits])); + if (hits.length) onXrelLoaded?.(hits); }).catch(()=>{}); }) .catch(e => setError(e.message))