From 7fc370545599b3c8c795de2b8012ce26458a0772 Mon Sep 17 00:00:00 2001 From: Colin Powell Date: Fri, 20 Jan 2023 13:23:23 -0500 Subject: [PATCH] Fix a bug in IMDB lookups for episodes --- vrobbler/apps/scrobbles/imdb.py | 8 +++++--- vrobbler/apps/scrobbles/views.py | 5 +++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/vrobbler/apps/scrobbles/imdb.py b/vrobbler/apps/scrobbles/imdb.py index 2c29fea..6204bc9 100644 --- a/vrobbler/apps/scrobbles/imdb.py +++ b/vrobbler/apps/scrobbles/imdb.py @@ -22,14 +22,14 @@ def lookup_video_from_imdb(imdb_id: str) -> dict: run_time_seconds = 60 * 60 runtimes = media.get("runtimes") if runtimes: - run_time_seconds = int(runtimes)[0] * 60 + run_time_seconds = int(runtimes[0]) * 60 # Ticks otherwise known as miliseconds run_time_ticks = run_time_seconds * 1000 * 1000 - item_type = Video.VideoType.MOVIE + item_type = "Movie" if media.get('series title'): - item_type = Video.VideoType.TV_EPISODE + item_type = "Episode" try: plot = media.get('plot')[0] @@ -38,6 +38,7 @@ def lookup_video_from_imdb(imdb_id: str) -> dict: except IndexError: plot = "" + logger.debug(f"Received data from IMDB: {media.__dict__}") # Build a rough approximation of a Jellyfin data response data_dict = { "ItemType": item_type, @@ -57,5 +58,6 @@ def lookup_video_from_imdb(imdb_id: str) -> dict: "IsPaused": False, "PlayedToCompletion": False, } + logger.debug(f"Parsed data from IMDB data: {data_dict}") return data_dict diff --git a/vrobbler/apps/scrobbles/views.py b/vrobbler/apps/scrobbles/views.py index 075a8ad..7d73a7e 100644 --- a/vrobbler/apps/scrobbles/views.py +++ b/vrobbler/apps/scrobbles/views.py @@ -49,8 +49,9 @@ class RecentScrobbleList(ListView): user = self.request.user now = timezone.now() if self.request.user.is_authenticated: - timezone.activate(pytz.timezone(user.profile.timezone)) - now = timezone.localtime(timezone.now()) + if user.profile: + timezone.activate(pytz.timezone(user.profile.timezone)) + now = timezone.localtime(timezone.now()) data['now_playing_list'] = Scrobble.objects.filter( in_progress=True, is_paused=False,