Simplify plugin settings and names
This commit is contained in:
@@ -556,7 +556,7 @@ def search_animes(query: str) -> List[SeriesResult]:
|
|||||||
|
|
||||||
|
|
||||||
class AniworldPlugin(BasisPlugin):
|
class AniworldPlugin(BasisPlugin):
|
||||||
name = "AniWorld (aniworld.to)"
|
name = "Aniworld"
|
||||||
|
|
||||||
def __init__(self) -> None:
|
def __init__(self) -> None:
|
||||||
self._anime_results: Dict[str, SeriesResult] = {}
|
self._anime_results: Dict[str, SeriesResult] = {}
|
||||||
|
|||||||
@@ -34,12 +34,6 @@ from plugin_helpers import dump_response_html, get_setting_bool, log_url, notify
|
|||||||
|
|
||||||
ADDON_ID = "plugin.video.viewit"
|
ADDON_ID = "plugin.video.viewit"
|
||||||
SETTING_BASE_URL = "einschalten_base_url"
|
SETTING_BASE_URL = "einschalten_base_url"
|
||||||
SETTING_INDEX_PATH = "einschalten_index_path"
|
|
||||||
SETTING_NEW_TITLES_PATH = "einschalten_new_titles_path"
|
|
||||||
SETTING_SEARCH_PATH = "einschalten_search_path"
|
|
||||||
SETTING_GENRES_PATH = "einschalten_genres_path"
|
|
||||||
SETTING_ENABLE_PLAYBACK = "einschalten_enable_playback"
|
|
||||||
SETTING_WATCH_PATH_TEMPLATE = "einschalten_watch_path_template"
|
|
||||||
GLOBAL_SETTING_LOG_URLS = "debug_log_urls"
|
GLOBAL_SETTING_LOG_URLS = "debug_log_urls"
|
||||||
GLOBAL_SETTING_DUMP_HTML = "debug_dump_html"
|
GLOBAL_SETTING_DUMP_HTML = "debug_dump_html"
|
||||||
GLOBAL_SETTING_SHOW_URL_INFO = "debug_show_url_info"
|
GLOBAL_SETTING_SHOW_URL_INFO = "debug_show_url_info"
|
||||||
@@ -474,7 +468,7 @@ def _parse_ng_state_genres(payload: Dict[str, Any]) -> Dict[str, int]:
|
|||||||
class EinschaltenPlugin(BasisPlugin):
|
class EinschaltenPlugin(BasisPlugin):
|
||||||
"""Metadata-Plugin für eine autorisierte Quelle."""
|
"""Metadata-Plugin für eine autorisierte Quelle."""
|
||||||
|
|
||||||
name = "einschalten"
|
name = "Einschalten"
|
||||||
|
|
||||||
def __init__(self) -> None:
|
def __init__(self) -> None:
|
||||||
self.is_available = REQUESTS_AVAILABLE
|
self.is_available = REQUESTS_AVAILABLE
|
||||||
@@ -501,21 +495,21 @@ class EinschaltenPlugin(BasisPlugin):
|
|||||||
base = self._get_base_url()
|
base = self._get_base_url()
|
||||||
if not base:
|
if not base:
|
||||||
return ""
|
return ""
|
||||||
path = _get_setting_text(SETTING_INDEX_PATH, default=DEFAULT_INDEX_PATH).strip() or "/"
|
path = DEFAULT_INDEX_PATH
|
||||||
return urljoin(base + "/", path.lstrip("/"))
|
return urljoin(base + "/", path.lstrip("/"))
|
||||||
|
|
||||||
def _new_titles_url(self) -> str:
|
def _new_titles_url(self) -> str:
|
||||||
base = self._get_base_url()
|
base = self._get_base_url()
|
||||||
if not base:
|
if not base:
|
||||||
return ""
|
return ""
|
||||||
path = _get_setting_text(SETTING_NEW_TITLES_PATH, default=DEFAULT_NEW_TITLES_PATH).strip() or "/movies/new"
|
path = DEFAULT_NEW_TITLES_PATH
|
||||||
return urljoin(base + "/", path.lstrip("/"))
|
return urljoin(base + "/", path.lstrip("/"))
|
||||||
|
|
||||||
def _genres_url(self) -> str:
|
def _genres_url(self) -> str:
|
||||||
base = self._get_base_url()
|
base = self._get_base_url()
|
||||||
if not base:
|
if not base:
|
||||||
return ""
|
return ""
|
||||||
path = _get_setting_text(SETTING_GENRES_PATH, default=DEFAULT_GENRES_PATH).strip() or "/genres"
|
path = DEFAULT_GENRES_PATH
|
||||||
return urljoin(base + "/", path.lstrip("/"))
|
return urljoin(base + "/", path.lstrip("/"))
|
||||||
|
|
||||||
def _api_genres_url(self) -> str:
|
def _api_genres_url(self) -> str:
|
||||||
@@ -528,7 +522,7 @@ class EinschaltenPlugin(BasisPlugin):
|
|||||||
base = self._get_base_url()
|
base = self._get_base_url()
|
||||||
if not base:
|
if not base:
|
||||||
return ""
|
return ""
|
||||||
path = _get_setting_text(SETTING_SEARCH_PATH, default=DEFAULT_SEARCH_PATH).strip() or "/search"
|
path = DEFAULT_SEARCH_PATH
|
||||||
url = urljoin(base + "/", path.lstrip("/"))
|
url = urljoin(base + "/", path.lstrip("/"))
|
||||||
return f"{url}?{urlencode({'query': query})}"
|
return f"{url}?{urlencode({'query': query})}"
|
||||||
|
|
||||||
@@ -570,8 +564,6 @@ class EinschaltenPlugin(BasisPlugin):
|
|||||||
base = self._get_base_url()
|
base = self._get_base_url()
|
||||||
if not base:
|
if not base:
|
||||||
return ""
|
return ""
|
||||||
template = _get_setting_text(SETTING_WATCH_PATH_TEMPLATE, default=DEFAULT_WATCH_PATH_TEMPLATE).strip()
|
|
||||||
if not template:
|
|
||||||
template = DEFAULT_WATCH_PATH_TEMPLATE
|
template = DEFAULT_WATCH_PATH_TEMPLATE
|
||||||
try:
|
try:
|
||||||
path = template.format(id=int(movie_id))
|
path = template.format(id=int(movie_id))
|
||||||
@@ -996,21 +988,17 @@ class EinschaltenPlugin(BasisPlugin):
|
|||||||
movie_id = self._ensure_title_id(title)
|
movie_id = self._ensure_title_id(title)
|
||||||
if movie_id is not None:
|
if movie_id is not None:
|
||||||
self._fetch_movie_detail(movie_id)
|
self._fetch_movie_detail(movie_id)
|
||||||
if _get_setting_bool(SETTING_ENABLE_PLAYBACK, default=False):
|
|
||||||
# Playback: expose a single "Stream" folder (inside: 1 playable item = Filmtitel).
|
# Playback: expose a single "Stream" folder (inside: 1 playable item = Filmtitel).
|
||||||
return ["Stream"]
|
return ["Stream"]
|
||||||
return ["Details"]
|
|
||||||
|
|
||||||
def episodes_for(self, title: str, season: str) -> List[str]:
|
def episodes_for(self, title: str, season: str) -> List[str]:
|
||||||
season = (season or "").strip()
|
season = (season or "").strip()
|
||||||
if season.casefold() == "stream" and _get_setting_bool(SETTING_ENABLE_PLAYBACK, default=False):
|
if season.casefold() == "stream":
|
||||||
title = (title or "").strip()
|
title = (title or "").strip()
|
||||||
return [title] if title else []
|
return [title] if title else []
|
||||||
return []
|
return []
|
||||||
|
|
||||||
def stream_link_for(self, title: str, season: str, episode: str) -> Optional[str]:
|
def stream_link_for(self, title: str, season: str, episode: str) -> Optional[str]:
|
||||||
if not _get_setting_bool(SETTING_ENABLE_PLAYBACK, default=False):
|
|
||||||
return None
|
|
||||||
title = (title or "").strip()
|
title = (title or "").strip()
|
||||||
season = (season or "").strip()
|
season = (season or "").strip()
|
||||||
episode = (episode or "").strip()
|
episode = (episode or "").strip()
|
||||||
|
|||||||
@@ -619,7 +619,7 @@ def scrape_series_detail(
|
|||||||
class SerienstreamPlugin(BasisPlugin):
|
class SerienstreamPlugin(BasisPlugin):
|
||||||
"""Downloader-Plugin, das Serien von s.to ueber requests/bs4 bereitstellt."""
|
"""Downloader-Plugin, das Serien von s.to ueber requests/bs4 bereitstellt."""
|
||||||
|
|
||||||
name = "Serienstream (s.to)"
|
name = "Serienstream"
|
||||||
POPULAR_GENRE_LABEL = "⭐ Beliebte Serien"
|
POPULAR_GENRE_LABEL = "⭐ Beliebte Serien"
|
||||||
|
|
||||||
def __init__(self) -> None:
|
def __init__(self) -> None:
|
||||||
|
|||||||
@@ -119,7 +119,7 @@ def _strip_der_film_suffix(title: str) -> str:
|
|||||||
class TopstreamfilmPlugin(BasisPlugin):
|
class TopstreamfilmPlugin(BasisPlugin):
|
||||||
"""Integration fuer eine HTML-basierte Suchseite."""
|
"""Integration fuer eine HTML-basierte Suchseite."""
|
||||||
|
|
||||||
name = "TopStreamFilm"
|
name = "Topstreamfilm"
|
||||||
|
|
||||||
def __init__(self) -> None:
|
def __init__(self) -> None:
|
||||||
self._session: RequestsSession | None = None
|
self._session: RequestsSession | None = None
|
||||||
|
|||||||
@@ -17,12 +17,6 @@
|
|||||||
</category>
|
</category>
|
||||||
<category label="Einschalten">
|
<category label="Einschalten">
|
||||||
<setting id="einschalten_base_url" type="text" label="Domain (BASE_URL)" default="https://einschalten.in" />
|
<setting id="einschalten_base_url" type="text" label="Domain (BASE_URL)" default="https://einschalten.in" />
|
||||||
<setting id="einschalten_index_path" type="text" label="Index-Pfad (z.B. /)" default="/" />
|
|
||||||
<setting id="einschalten_new_titles_path" type="text" label="Neue-Titel-Pfad (z.B. /movies/new)" default="/movies/new" />
|
|
||||||
<setting id="einschalten_search_path" type="text" label="Suche-Pfad (z.B. /search)" default="/search" />
|
|
||||||
<setting id="einschalten_genres_path" type="text" label="Genres-Pfad (z.B. /genres)" default="/genres" />
|
|
||||||
<setting id="einschalten_enable_playback" type="bool" label="Wiedergabe aktivieren (nur autorisierte Quellen)" default="false" />
|
|
||||||
<setting id="einschalten_watch_path_template" type="text" label="Watch-Pfad-Template (z.B. /api/movies/{id}/watch)" default="/api/movies/{id}/watch" />
|
|
||||||
</category>
|
</category>
|
||||||
<category label="TMDB">
|
<category label="TMDB">
|
||||||
<setting id="tmdb_api_key" type="text" label="TMDB API Key" default="" />
|
<setting id="tmdb_api_key" type="text" label="TMDB API Key" default="" />
|
||||||
|
|||||||
Reference in New Issue
Block a user