diff --git a/client/components/app/BookShelfRow.vue b/client/components/app/BookShelfRow.vue index 082f9fe37..fac89a70b 100644 --- a/client/components/app/BookShelfRow.vue +++ b/client/components/app/BookShelfRow.vue @@ -93,10 +93,10 @@ export default { editAuthor(author) { this.$store.commit('globals/showEditAuthorModal', author) }, - editItem(libraryItem) { + editItem(libraryItem, tab = 'details') { var itemIds = this.shelf.entities.map((e) => e.id) this.$store.commit('setBookshelfBookIds', itemIds) - this.$store.commit('showEditModal', libraryItem) + this.$store.commit('showEditModalOnTab', { libraryItem, tab: tab || 'details' }) }, editEpisode({ libraryItem, episode }) { this.$store.commit('setEpisodeTableEpisodeIds', [episode.id]) diff --git a/client/components/app/BookShelfToolbar.vue b/client/components/app/BookShelfToolbar.vue index 95e7c378c..b7ecff624 100644 --- a/client/components/app/BookShelfToolbar.vue +++ b/client/components/app/BookShelfToolbar.vue @@ -3,24 +3,18 @@

{{ $strings.ButtonHome }}

- - - + home

{{ $strings.ButtonLibrary }}

- - - + import_contacts

{{ $strings.ButtonLatest }}

{{ $strings.ButtonSeries }}

- - - + view_column

{{ $strings.ButtonPlaylists }}

@@ -32,12 +26,7 @@

{{ $strings.ButtonAuthors }}

- - - + groups

{{ $strings.ButtonAdd }}

diff --git a/client/components/app/LazyBookshelf.vue b/client/components/app/LazyBookshelf.vue index 854b61b24..4c72d0d78 100644 --- a/client/components/app/LazyBookshelf.vue +++ b/client/components/app/LazyBookshelf.vue @@ -232,11 +232,11 @@ export default { clearFilter() { this.$store.dispatch('user/updateUserSettings', { filterBy: 'all' }) }, - editEntity(entity) { + editEntity(entity, tab = 'details') { if (this.entityName === 'items' || this.entityName === 'series-books') { const bookIds = this.entities.map((e) => e.id) this.$store.commit('setBookshelfBookIds', bookIds) - this.$store.commit('showEditModal', entity) + this.$store.commit('showEditModalOnTab', { libraryItem: entity, tab: tab || 'details' }) } else if (this.entityName === 'collections') { this.$store.commit('globals/setEditCollection', entity) } else if (this.entityName === 'playlists') { diff --git a/client/components/app/SideRail.vue b/client/components/app/SideRail.vue index 468517aa4..fe3d51884 100644 --- a/client/components/app/SideRail.vue +++ b/client/components/app/SideRail.vue @@ -8,6 +8,8 @@ + + home

{{ $strings.ButtonHome }}

@@ -26,6 +28,8 @@ + + import_contacts

{{ $strings.ButtonLibrary }}

@@ -36,6 +40,8 @@ + + view_column

{{ $strings.ButtonSeries }}

@@ -65,6 +71,8 @@ d="M12,5.5A3.5,3.5 0 0,1 15.5,9A3.5,3.5 0 0,1 12,12.5A3.5,3.5 0 0,1 8.5,9A3.5,3.5 0 0,1 12,5.5M5,8C5.56,8 6.08,8.15 6.53,8.42C6.38,9.85 6.8,11.27 7.66,12.38C7.16,13.34 6.16,14 5,14A3,3 0 0,1 2,11A3,3 0 0,1 5,8M19,8A3,3 0 0,1 22,11A3,3 0 0,1 19,14C17.84,14 16.84,13.34 16.34,12.38C17.2,11.27 17.62,9.85 17.47,8.42C17.92,8.15 18.44,8 19,8M5.5,18.25C5.5,16.18 8.41,14.5 12,14.5C15.59,14.5 18.5,16.18 18.5,18.25V20H5.5V18.25M0,20V18.5C0,17.11 1.89,15.94 4.45,15.6C3.86,16.28 3.5,17.22 3.5,18.25V20H0M24,20H20.5V18.25C20.5,17.22 20.14,16.28 19.55,15.6C22.11,15.94 24,17.11 24,18.5V20Z" /> + + groups

{{ $strings.ButtonAuthors }}

diff --git a/client/components/cards/LazyBookCard.vue b/client/components/cards/LazyBookCard.vue index 955e18d92..d06f083ba 100644 --- a/client/components/cards/LazyBookCard.vue +++ b/client/components/cards/LazyBookCard.vue @@ -353,6 +353,14 @@ export default { if (!this.userProgressLastUpdated) return '\u00A0' return this.$getString('LabelLastProgressDate', [this.$formatDatetime(this.userProgressLastUpdated, this.dateFormat, this.timeFormat)]) } + if (this.orderBy === 'progress.createdAt') { + if (!this.userProgressStartedDate) return '\u00A0' + return this.$getString('LabelStartedDate', [this.$formatDatetime(this.userProgressStartedDate, this.dateFormat, this.timeFormat)]) + } + if (this.orderBy === 'progress.finishedAt') { + if (!this.userProgressFinishedDate) return '\u00A0' + return this.$getString('LabelFinishedDate', [this.$formatDatetime(this.userProgressFinishedDate, this.dateFormat, this.timeFormat)]) + } return null }, episodeProgress() { @@ -389,6 +397,14 @@ export default { if (!this.userProgress) return null return this.userProgress.lastUpdate }, + userProgressStartedDate() { + if (!this.userProgress) return null + return this.userProgress.startedAt + }, + userProgressFinishedDate() { + if (!this.userProgress) return null + return this.userProgress.finishedAt + }, itemIsFinished() { if (this.booksInSeries) return this.seriesIsFinished return this.userProgress ? !!this.userProgress.isFinished : false @@ -772,11 +788,11 @@ export default { }, showEditModalFiles() { // More menu func - this.store.commit('showEditModalOnTab', { libraryItem: this.libraryItem, tab: 'files' }) + this.$emit('edit', this.libraryItem, 'files') }, showEditModalMatch() { // More menu func - this.store.commit('showEditModalOnTab', { libraryItem: this.libraryItem, tab: 'match' }) + this.$emit('edit', this.libraryItem, 'match') }, sendToDevice(deviceName) { // More menu func diff --git a/client/components/controls/LibrarySortSelect.vue b/client/components/controls/LibrarySortSelect.vue index 536c93f12..a0734d6a4 100644 --- a/client/components/controls/LibrarySortSelect.vue +++ b/client/components/controls/LibrarySortSelect.vue @@ -134,6 +134,14 @@ export default { text: this.$strings.LabelLibrarySortByProgress, value: 'progress' }, + { + text: this.$strings.LabelLibrarySortByProgressStarted, + value: 'progress.createdAt' + }, + { + text: this.$strings.LabelLibrarySortByProgressFinished, + value: 'progress.finishedAt' + }, { text: this.$strings.LabelRandomly, value: 'random' @@ -200,4 +208,4 @@ export default { .librarySortMenu { max-height: calc(100vh - 125px); } - \ No newline at end of file + diff --git a/client/components/modals/item/tabs/Cover.vue b/client/components/modals/item/tabs/Cover.vue index 17979f708..b404a9abb 100644 --- a/client/components/modals/item/tabs/Cover.vue +++ b/client/components/modals/item/tabs/Cover.vue @@ -51,19 +51,21 @@
- +
- +
- +
- {{ $strings.ButtonSearch }} + {{ $strings.ButtonSearch }} + {{ $strings.ButtonCancel }}
-

{{ $strings.MessageNoCoversFound }}

+

{{ $strings.MessageLoading }}

+

{{ $strings.MessageNoCoversFound }}