fix: Build-Fehler JSX, xREL TV-Support mit type:tv Parameter

This commit is contained in:
2026-06-18 12:01:25 +02:00
parent 940e1860b7
commit fe6fa0324f
2 changed files with 43 additions and 41 deletions

View File

@@ -159,7 +159,7 @@ async function xrelFetch(path, params = {}) {
// Einzige Funktion für xREL: benutzt immer die ext_info_id und gibt max 5 deutsche ≤1080p Releases
// Cache-Key: tmdb_id (immer eindeutig, konsistent zwischen Badge und Modal)
async function getXrelData(tmdbId, imdbId, title, originalTitle, movieYear) {
async function getXrelData(tmdbId, imdbId, title, originalTitle, movieYear, mediaType='movie') {
const cacheKey = `xrel:tmdb:${tmdbId}`;
const cached = cacheGet(cacheKey);
if (cached !== undefined) return cached;
@@ -180,7 +180,7 @@ async function getXrelData(tmdbId, imdbId, title, originalTitle, movieYear) {
return {
q,
data: await xrelFetch('/search/ext_info.json', {
q: normalizeUmlauts(q).replace(/[*#!?:]/g,''), type:'movie', limit:10
q: normalizeUmlauts(q).replace(/[*#!?:]/g,''), type:mediaType, limit:10
})
};
} catch(_) { return null; }
@@ -221,7 +221,7 @@ async function getXrelData(tmdbId, imdbId, title, originalTitle, movieYear) {
const [sceneData, p2pData, infoData] = await Promise.all([
xrelFetch('/release/ext_info.json', { id: extInfoId, per_page: 50 }).catch(()=>({})),
xrelFetch('/p2p/releases.json', { ext_info_id: extInfoId, per_page: 50 }).catch(()=>({})),
xrelFetch('/ext_info/info.json', { id: extInfoId, type: 'movie' }).catch(()=>({})),
xrelFetch('/ext_info/info.json', { id: extInfoId, type: mediaType }).catch(()=>({})),
]);
// xREL Erscheinungsdaten
@@ -463,7 +463,7 @@ router.get('/movie/:id/xrel', authenticate, async (req, res) => {
// Filmjahr aus Query-Param; year=0 oder fehlt → kein Jahresfilter
let filmYear = null;
if (req.query.year && req.query.year !== '0') filmYear = parseInt(req.query.year);
const data = await getXrelData(req.params.id, imdbId, title, origTitle, filmYear);
const data = await getXrelData(req.params.id, imdbId, title, origTitle, filmYear, media_type);
const releases = Array.isArray(data) ? data : (data.releases || []);
const xrel_dates = Array.isArray(data) ? [] : (data.xrel_dates || []);
res.json({ xrel: releases, xrel_dates, has_xrel: releases.length > 0 });