diff --git a/client/src/routes/Files.svelte b/client/src/routes/Files.svelte index 841e535..20bc3b9 100644 --- a/client/src/routes/Files.svelte +++ b/client/src/routes/Files.svelte @@ -76,36 +76,14 @@ let isPlaying = false; if (!value) return "Bilinmiyor"; const raw = String(value).trim(); if (!raw) return "Bilinmiyor"; - - const normalise = (input) => { - try { - return new URL(input); - } catch { - try { - return new URL(`http://${input}`); - } catch { - return null; - } - } - }; - - const parsed = normalise(raw); - if (parsed) { - let host = parsed.hostname || ""; - if (host.toLowerCase().startsWith("tracker.")) { - host = host.slice(8); - } - if (host) return host; + try { + const url = new URL(raw); + const host = url.hostname.replace(/^tracker\./i, ""); + return host || raw; + } catch (err) { + const stripped = raw.replace(/^.*?:\/\//, "").replace(/\/.*$/, ""); + return stripped.replace(/^tracker\./i, "") || raw; } - - const stripped = raw - .replace(/^.*?:\/\//, "") - .replace(/\/.*$/, "") - .replace(/:.*/, ""); - if (stripped.toLowerCase().startsWith("tracker.")) { - return stripped.slice(8); - } - return stripped || raw; } function formatDateTime(value) { if (!value) return "—"; diff --git a/docker-compose.yml b/docker-compose.yml index c07ae44..1fa012c 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -15,4 +15,5 @@ services: USERNAME: ${USERNAME} PASSWORD: ${PASSWORD} TMDB_API_KEY: ${TMDB_API_KEY} + TTVDB_API_KEY: ${TTVDB_API_KEY} VIDEO_THUMBNAIL_TIME: ${VIDEO_THUMBNAIL_TIME} diff --git a/server/server.js b/server/server.js index ffe2d8c..f6b438e 100644 --- a/server/server.js +++ b/server/server.js @@ -576,12 +576,17 @@ async function tmdbFetch(endpoint, params = {}) { } } - const resp = await fetch(url); - if (!resp.ok) { - console.warn(`⚠️ TMDB isteği başarısız (${url}): ${resp.status}`); + try { + const resp = await fetch(url); + if (!resp.ok) { + console.warn(`⚠️ TMDB isteği başarısız (${url}): ${resp.status}`); + return null; + } + return await resp.json(); + } catch (err) { + console.warn(`⚠️ TMDB isteği başarısız (${url}): ${err.message}`); return null; } - return resp.json(); } async function fetchMovieMetadata(title, year) {