[books] Clean up fragmented KoReader scrobbling

This commit is contained in:
2024-02-13 14:54:29 -05:00
parent 4e330a6f03
commit 525c7c4e2b
4 changed files with 57 additions and 44 deletions

View File

@ -683,9 +683,6 @@ class Scrobble(TimeStampedModel):
((playback_seconds + long_play_secs) / run_time_secs) * 100
)
# if percent > 100:
# percent = 100
return percent
@property
@ -743,9 +740,23 @@ class Scrobble(TimeStampedModel):
if self.book_page_data:
pages = [int(k) for k in self.book_page_data.keys()]
pages.sort()
pages_read = pages[-1] - pages[0]
if len(pages) == 1:
pages_read = 1
elif len(pages) >= 2:
pages_read += pages[-1] - pages[0]
else:
pages_read = pages[-1] - pages[0]
return pages_read
@property
def last_page_read(self) -> int:
last_page = 0
if self.book_page_data:
pages = [int(k) for k in self.book_page_data.keys()]
pages.sort()
last_page = pages[-1]
return last_page
@classmethod
def create_or_update(
cls, media, user_id: int, scrobble_data: dict, **kwargs