From 9c29414e6db0c53a81dcd0d60949dd76e903ac41 Mon Sep 17 00:00:00 2001 From: BoulderBadgeDad Date: Mon, 15 Jun 2026 11:23:31 -0700 Subject: [PATCH] =?UTF-8?q?video:=20detail=20pages=20=E2=80=94=20Photos=20?= =?UTF-8?q?gallery+lightbox,=20all=20Videos,=20Details/keywords,=20full=20?= =?UTF-8?q?cast?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Frontend for the new data, on both movie + TV detail pages: - Photos: a backdrops rail → fullscreen lightbox (‹ › nav, keyboard arrows, Esc, counter). - Videos: a rail of every trailer/teaser/clip/featurette (YouTube thumbs) → opens in the existing player modal. - Details: budget / box office / language / country + keyword tag chips. - Cast & Crew gets a 'View all N' → full-cast modal (clickable to person; TV shows per-actor episode counts). All cached server-side (instant re-open) and lazy-loaded images. Isolated; shell tests cover the new sections + modals. --- tests/test_video_side_shell.py | 4 + webui/index.html | 36 +++++- webui/static/video/video-detail.js | 174 ++++++++++++++++++++++++++++- webui/static/video/video-side.css | 94 ++++++++++++++++ 4 files changed, 304 insertions(+), 4 deletions(-) diff --git a/tests/test_video_side_shell.py b/tests/test_video_side_shell.py index 89cf0b7d..3874d119 100644 --- a/tests/test_video_side_shell.py +++ b/tests/test_video_side_shell.py @@ -436,6 +436,10 @@ def test_detail_keeps_preview_items_in_app(): # Director/crew names link to the person page; episode-sync has a banner. assert "personName" in src and "data-vd-person" in src assert "data-vd-ep-syncing" in _INDEX and "showEpSyncing" in src + # Media gallery + lightbox, all videos, facts/keywords, full-cast modal. + assert "data-vd-gallery" in _INDEX and "data-vd-videos" in _INDEX + assert "data-vd-facts" in _INDEX and "data-vd-cast-all" in _INDEX + assert "openLightbox" in src and "renderVideos" in src and "openCastModal" in src # The old external 'similar' link (themoviedb.org//) is gone — the # only remaining themoviedb.org ref is the TMDB badge logo asset for owned items. assert "www.themoviedb.org/' + (s.kind" not in src diff --git a/webui/index.html b/webui/index.html index 6e0f8d36..3b9bf049 100644 --- a/webui/index.html +++ b/webui/index.html @@ -923,10 +923,26 @@
+ + +