Add TMDB master toggle and filter upcoming episodes

This commit is contained in:
2026-02-01 20:05:28 +01:00
parent 4d74755e20
commit fe79cca818
4 changed files with 33 additions and 1 deletions

View File

@@ -113,6 +113,10 @@ def _tmdb_prefetch_concurrency() -> int:
return max(1, min(20, value))
def _tmdb_enabled() -> bool:
return _get_setting_bool("tmdb_enabled", default=True)
def _log(message: str, level: int = xbmc.LOGINFO) -> None:
xbmc.log(f"[ViewIt] {message}", level)
@@ -548,6 +552,8 @@ def _tmdb_file_log(message: str) -> None:
def _tmdb_labels_and_art(title: str) -> tuple[dict[str, str], dict[str, str], list[TmdbCastMember]]:
if not _tmdb_enabled():
return {}, {}, []
title_key = (title or "").strip().casefold()
language = _get_setting_string("tmdb_language").strip() or "de-DE"
show_plot = _get_setting_bool("tmdb_show_plot", default=True)
@@ -686,10 +692,14 @@ async def _tmdb_labels_and_art_bulk_async(
def _tmdb_labels_and_art_bulk(
titles: list[str],
) -> dict[str, tuple[dict[str, str], dict[str, str], list[TmdbCastMember]]]:
if not _tmdb_enabled():
return {}
return _run_async(_tmdb_labels_and_art_bulk_async(titles))
def _tmdb_episode_labels_and_art(*, title: str, season_label: str, episode_label: str) -> tuple[dict[str, str], dict[str, str]]:
if not _tmdb_enabled():
return {"title": episode_label}, {}
title_key = (title or "").strip().casefold()
tmdb_id = _TMDB_ID_CACHE.get(title_key)
if not tmdb_id:
@@ -748,6 +758,8 @@ def _tmdb_episode_labels_and_art(*, title: str, season_label: str, episode_label
def _tmdb_episode_cast(*, title: str, season_label: str, episode_label: str) -> list[TmdbCastMember]:
if not _tmdb_enabled():
return []
show_episode_cast = _get_setting_bool("tmdb_show_episode_cast", default=False)
if not show_episode_cast:
return []