+
-
+
{{ numEpisodesIncomplete }}
@@ -343,11 +339,22 @@ export default {
if (!this.userProgress || this.userProgress.progress) return false
return this.userProgress.ebookProgress > 0
},
+ seriesProgressPercent() {
+ if (!this.libraryItemIdsInSeries.length) return 0
+ let progressPercent = 0
+ const useEBookProgress = this.useEBookProgress
+ this.libraryItemIdsInSeries.forEach((lid) => {
+ const progress = this.store.getters['user/getUserMediaProgress'](lid)
+ if (progress) progressPercent += progress.isFinished ? 1 : useEBookProgress ? progress.ebookProgress || 0 : progress.progress || 0
+ })
+ return progressPercent / this.libraryItemIdsInSeries.length
+ },
userProgressPercent() {
- if (this.useEBookProgress) return Math.max(Math.min(1, this.userProgress.ebookProgress), 0)
- return this.userProgress ? Math.max(Math.min(1, this.userProgress.progress), 0) || 0 : 0
+ let progressPercent = this.itemIsFinished ? 1 : this.booksInSeries ? this.seriesProgressPercent : this.useEBookProgress ? this.userProgress?.ebookProgress || 0 : this.userProgress?.progress || 0
+ return Math.max(Math.min(1, progressPercent), 0)
},
itemIsFinished() {
+ if (this.booksInSeries) return this.seriesIsFinished
return this.userProgress ? !!this.userProgress.isFinished : false
},
seriesIsFinished() {
diff --git a/client/components/cards/LazySeriesCard.vue b/client/components/cards/LazySeriesCard.vue
index c8bbf12c..72ce947f 100644
--- a/client/components/cards/LazySeriesCard.vue
+++ b/client/components/cards/LazySeriesCard.vue
@@ -119,9 +119,13 @@ export default {
return this.seriesBookProgress.some((p) => !p.isFinished && p.progress > 0)
},
seriesPercentInProgress() {
- let totalFinishedAndInProgress = this.seriesBooksFinished.length
- if (this.hasSeriesBookInProgress) totalFinishedAndInProgress += 1
- return Math.min(1, Math.max(0, totalFinishedAndInProgress / this.books.length))
+ if (!this.books.length) return 0
+ let progressPercent = 0
+ this.seriesBookProgress.forEach((progress) => {
+ progressPercent += progress.isFinished ? 1 : progress.progress || 0
+ })
+ progressPercent /= this.books.length
+ return Math.min(1, Math.max(0, progressPercent))
},
isSeriesFinished() {
return this.books.length === this.seriesBooksFinished.length
diff --git a/client/components/tables/podcast/DownloadQueueTable.vue b/client/components/tables/podcast/DownloadQueueTable.vue
index 04e631e2..d4d1e710 100644
--- a/client/components/tables/podcast/DownloadQueueTable.vue
+++ b/client/components/tables/podcast/DownloadQueueTable.vue
@@ -20,7 +20,7 @@
{{ downloadQueued.podcastTitle }}
-
+
|
diff --git a/client/components/widgets/ExplicitIndicator.vue b/client/components/widgets/ExplicitIndicator.vue
index 6a03d925..601b9be4 100644
--- a/client/components/widgets/ExplicitIndicator.vue
+++ b/client/components/widgets/ExplicitIndicator.vue
@@ -1,5 +1,5 @@
-
+
|