From e8dacf0722f8c24deeea79deecf1ae51234e658b Mon Sep 17 00:00:00 2001 From: Benex254 Date: Sun, 28 Jul 2024 11:24:31 +0300 Subject: [PATCH] feat(anilist): only update episode progress in their is actual progress --- fastanime/cli/config.py | 5 +++++ fastanime/cli/interfaces/anilist_interfaces.py | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/fastanime/cli/config.py b/fastanime/cli/config.py index 930a5e1..1ab7d7c 100644 --- a/fastanime/cli/config.py +++ b/fastanime/cli/config.py @@ -34,6 +34,7 @@ class Config(object): "preview": "False", "format": "best[height<=1080]/bestvideo[height<=1080]+bestaudio/best", "provider": "allanime", + "error": "3", } ) self.configparser.add_section("stream") @@ -55,6 +56,7 @@ class Config(object): self.auto_next = self.get_auto_next() self.auto_select = self.get_auto_select() self.quality = self.get_quality() + self.error = self.get_error() self.server = self.get_server() self.format = self.get_format() self.preferred_language = self.get_preferred_language() @@ -130,6 +132,9 @@ class Config(object): def get_quality(self): return self.configparser.getint("stream", "quality") + def get_error(self): + return self.configparser.getint("stream", "error") + def get_server(self): return self.configparser.get("stream", "server") diff --git a/fastanime/cli/interfaces/anilist_interfaces.py b/fastanime/cli/interfaces/anilist_interfaces.py index d47d133..63d107b 100644 --- a/fastanime/cli/interfaces/anilist_interfaces.py +++ b/fastanime/cli/interfaces/anilist_interfaces.py @@ -246,12 +246,12 @@ def fetch_streams(config: Config, anilist_config: QueryDict): episode_number, ) # -- update anilist info if user -- - if config.user: + if config.user and episode_number: AniList.update_anime_list( { "mediaId": anime_id, "status": "CURRENT", - "progress": episode_number if episode_number else 0, + "progress": episode_number, } ) @@ -267,7 +267,7 @@ def fetch_streams(config: Config, anilist_config: QueryDict): if stop_time == "0": episode = str(int(episode_number) + 1) else: - error = 5 * 60 + error = config.error * 60 delta = calculate_time_delta(stop_time, total_time) if delta.total_seconds() > error: episode = episode_number