From f9dcc0d3410635acd7b889a7c615c4f480cb165c Mon Sep 17 00:00:00 2001 From: Colin Powell Date: Thu, 13 Apr 2023 10:18:38 -0400 Subject: [PATCH] Fix a handful of little bugs Refactor of manual scrobbling missed an import KoReader book removed in sqlite fails import Looking up album by name and artists screws up on MBid unique --- vrobbler/apps/books/koreader.py | 2 ++ vrobbler/apps/music/utils.py | 4 +++- vrobbler/apps/scrobbles/constants.py | 2 +- vrobbler/apps/scrobbles/views.py | 3 +++ 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/vrobbler/apps/books/koreader.py b/vrobbler/apps/books/koreader.py index 7291093..52e0759 100644 --- a/vrobbler/apps/books/koreader.py +++ b/vrobbler/apps/books/koreader.py @@ -129,6 +129,8 @@ def build_scrobbles_from_pages( book_read_time_map = {} for page_row in rows: koreader_id = page_row[KoReaderPageStatColumn.ID_BOOK.value] + if koreader_id not in book_id_map.keys(): + continue page_number = page_row[KoReaderPageStatColumn.PAGE.value] ts = page_row[KoReaderPageStatColumn.START_TIME.value] book_id = book_id_map[koreader_id][0] diff --git a/vrobbler/apps/music/utils.py b/vrobbler/apps/music/utils.py index 377d2da..c9265f0 100644 --- a/vrobbler/apps/music/utils.py +++ b/vrobbler/apps/music/utils.py @@ -50,7 +50,9 @@ def get_or_create_album( ) return - album = Album.objects.filter(artists__in=[artist], name=name).first() + album = Album.objects.filter( + musicbrainz_id=mbid, name=name, artists__in=[artist] + ).first() if not album and name: mbid = mbid or album_dict["mb_id"] diff --git a/vrobbler/apps/scrobbles/constants.py b/vrobbler/apps/scrobbles/constants.py index 92a8d33..c254e2c 100644 --- a/vrobbler/apps/scrobbles/constants.py +++ b/vrobbler/apps/scrobbles/constants.py @@ -11,7 +11,7 @@ LONG_PLAY_MEDIA = { MANUAL_SCROBBLE_FNS = { "-v": "manual_scrobble_video_game", "-b": "manual_scrobble_book", - "-s": "manual_scrobble_sport_event", + "-s": "manual_scrobble_event", "-i": "manual_scrobble_video", } diff --git a/vrobbler/apps/scrobbles/views.py b/vrobbler/apps/scrobbles/views.py index 05ee932..612876f 100644 --- a/vrobbler/apps/scrobbles/views.py +++ b/vrobbler/apps/scrobbles/views.py @@ -48,6 +48,9 @@ from scrobbles.scrobblers import ( jellyfin_scrobble_track, jellyfin_scrobble_video, manual_scrobble_book, + manual_scrobble_event, + manual_scrobble_video, + manual_scrobble_video_game, mopidy_scrobble_podcast, mopidy_scrobble_track, )