dev: load full metadata for currently opened genre page

This commit is contained in:
2026-02-24 14:00:19 +01:00
parent b9687ea127
commit 45d447cdb3
3 changed files with 16 additions and 9 deletions

View File

@@ -2285,13 +2285,9 @@ def _show_category_titles_page(plugin_name: str, category: str, page: int = 1) -
titles.sort(key=lambda value: value.casefold())
if titles:
minimal_genre_list = _plugin_has_capability(plugin, "minimal_genre_list")
if minimal_genre_list:
use_source, show_tmdb, prefer_source = True, False, True
else:
use_source, show_tmdb, prefer_source = _metadata_policy(
plugin_name, plugin, allow_tmdb=_tmdb_list_enabled()
)
use_source, show_tmdb, prefer_source = _metadata_policy(
plugin_name, plugin, allow_tmdb=_tmdb_list_enabled()
)
plugin_meta = _collect_plugin_metadata(plugin, titles) if use_source else {}
show_plot = _get_setting_bool("tmdb_show_plot", default=True)
show_art = _get_setting_bool("tmdb_show_art", default=True)

View File

@@ -1321,7 +1321,7 @@ class SerienstreamPlugin(BasisPlugin):
def capabilities(self) -> set[str]:
"""Meldet unterstützte Features für Router-Menüs."""
return {"popular_series", "genres", "latest_episodes", "minimal_genre_list"}
return {"popular_series", "genres", "latest_episodes"}
def popular_series(self) -> List[str]:
"""Liefert die Titel der beliebten Serien (Quelle: `/beliebte-serien`)."""
@@ -1786,6 +1786,17 @@ class SerienstreamPlugin(BasisPlugin):
if series.description:
info["plot"] = series.description
# Fuer Listenansichten laden wir pro Seite die Detail-Metadaten vollständig nach.
try:
soup = _get_soup(series.url, session=get_requests_session("serienstream", headers=HEADERS))
parsed_info, parsed_art = _extract_series_metadata(soup)
if parsed_info:
info.update(parsed_info)
if parsed_art:
art.update(parsed_art)
except Exception:
pass
self._series_metadata_cache[cache_key] = (dict(info), dict(art))
return info, art, None