UX-Runde: echte Disc-Titel via BD-Metadaten, Preview-Crash, Dashboard, Ziele
Ampel / ampel (push) Failing after 38s
Ampel / ampel (push) Failing after 38s
Commander-Befunde 23.07. abends:
1. Metadaten "klappen nicht": Wurzel = kryptisches Volume-Label + kein
TMDB-Key. Jetzt: API mountet die Disc read-only (CAP_SYS_ADMIN ist da)
und liest den KLARTEXT-Titel aus BDMV/META/DL/bdmt_*.xml; dazu
progressive Suchdegradation (Titel-Varianten) und OMDb-Unscharf-Suche
(s= + imdbID-Nachladen) — mit dem vorhandenen OMDb-Key gibt es damit
Titel/Jahr/Poster auch ohne TMDB
2. Weisses Fenster beim Pre-Scan: Lucide-Icons sind forwardRef —
Direktaufruf getIcon(...)({size}) crashte die Seite; als JSX gerendert
3. Dashboard sortiert: System-Leiste (Encoder + aktiver Job) oben,
Disc/Geraete -> Stats -> Jobs, Live-Log ans Ende
4. Ziel-Dialog mit ORDNER-BROWSER (GET /browse, nur unter /app/media);
Schnellwahl nutzt die Settings-Unterordner statt Hartkodierung;
Tab "Verzeichnisse" in "Speicherziele" aufgegangen (redundant)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -55,6 +55,22 @@ class OMDbClient:
|
||||
response = self.session.get(OMDB_BASE_URL, params=params, timeout=10)
|
||||
response.raise_for_status()
|
||||
data = response.json()
|
||||
|
||||
# t= ist exakt — wenn leer, unscharfe Suche (s=) und den besten
|
||||
# Treffer per imdbID nachladen
|
||||
if data.get("Response") != "True":
|
||||
suche = self.session.get(
|
||||
OMDB_BASE_URL,
|
||||
params={"apikey": self.api_key, "s": title, "r": "json"},
|
||||
timeout=10,
|
||||
).json()
|
||||
treffer = (suche.get("Search") or []) if suche.get("Response") == "True" else []
|
||||
if treffer:
|
||||
data = self.session.get(
|
||||
OMDB_BASE_URL,
|
||||
params={"apikey": self.api_key, "i": treffer[0]["imdbID"], "r": "json"},
|
||||
timeout=10,
|
||||
).json()
|
||||
except Exception as e:
|
||||
print(f"OMDb API Error: {e}")
|
||||
return None
|
||||
|
||||
Reference in New Issue
Block a user