From 1423e50ccd4136722a58309efa7d508419b176fe Mon Sep 17 00:00:00 2001 From: BoulderBadgeDad Date: Mon, 15 Jun 2026 12:28:32 -0700 Subject: [PATCH] video: fix Play/Trailer buttons vanishing on owned movies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit maybeRefreshMovie re-fetched the library payload (no trailer/server — those come from the extras call) and replaced data, so renderActions re-rendered without the buttons right after they appeared. It now carries over the live extras fields (server/trailer/next_episode), mirroring the show reloadDetail fix. --- webui/static/video/video-detail.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/webui/static/video/video-detail.js b/webui/static/video/video-detail.js index 1330752e..226dff0e 100644 --- a/webui/static/video/video-detail.js +++ b/webui/static/video/video-detail.js @@ -939,7 +939,15 @@ fetch(DETAIL_URL + 'movie/' + id, { headers: { 'Accept': 'application/json' } }) .then(function (r) { return r.ok ? r.json() : null; }) .then(function (d) { - if (d && !d.error && currentId === id) { data = d; renderBillboard(d); renderDetails(d); } + if (d && !d.error && currentId === id) { + // Keep the live extras (server/trailer/next-ep) the + // detail payload lacks — else Play/Trailer vanish. + var prev = data || {}; + d.server = prev.server || null; + d.trailer = prev.trailer || null; + d.next_episode = prev.next_episode || null; + data = d; renderBillboard(d); renderDetails(d); + } }); } }).catch(function () { /* best-effort */ });