diff --git a/client/components/app/Appbar.vue b/client/components/app/Appbar.vue
index 879d50a3..92599c7a 100644
--- a/client/components/app/Appbar.vue
+++ b/client/components/app/Appbar.vue
@@ -186,7 +186,7 @@ export default {
methods: {
requestBatchQuickEmbed() {
const payload = {
- message: 'Warning! Quick embed will not backup your audio files. Make sure that you have a backup of your audio files.
Would you like to continue?',
+ message: this.$strings.MessageConfirmQuickEmbed,
callback: (confirmed) => {
if (confirmed) {
this.$axios
@@ -219,7 +219,7 @@ export default {
},
async batchRescan() {
const payload = {
- message: `Are you sure you want to re-scan ${this.selectedMediaItems.length} items?`,
+ message: this.$getString('MessageConfirmReScanLibraryItems', [this.selectedMediaItems.length]),
callback: (confirmed) => {
if (confirmed) {
this.$axios
@@ -316,8 +316,8 @@ export default {
},
batchDeleteClick() {
const payload = {
- message: `This will delete ${this.numMediaItemsSelected} library items from the database and your file system. Are you sure?`,
- checkboxLabel: 'Delete from file system. Uncheck to only remove from database.',
+ message: this.$getString('MessageConfirmDeleteLibraryItems', [this.numMediaItemsSelected]),
+ checkboxLabel: this.$strings.LabelDeleteFromFileSystemCheckbox,
yesButtonText: this.$strings.ButtonDelete,
yesButtonColor: 'error',
checkboxDefaultValue: true,
diff --git a/client/components/app/ConfigSideNav.vue b/client/components/app/ConfigSideNav.vue
index 677aba70..c2db0725 100644
--- a/client/components/app/ConfigSideNav.vue
+++ b/client/components/app/ConfigSideNav.vue
@@ -14,10 +14,10 @@
v{{ $config.version }}
Update{{ Source }}
@@ -235,3 +237,12 @@ export default { mounted() {} } + + \ No newline at end of file diff --git a/client/components/app/StreamContainer.vue b/client/components/app/StreamContainer.vue index d40ce0da..e9b6969d 100644 --- a/client/components/app/StreamContainer.vue +++ b/client/components/app/StreamContainer.vue @@ -1,9 +1,9 @@by {{ book.author }}
Narrated by {{ book.narrator }}
-Runtime: {{ $elapsedPrettyExtended(book.duration * 60) }}
-Runtime: {{ $elapsedPrettyExtended(bookDuration, false) }} {{ bookDurationComparison }}
+{{ series.series }} #{{ series.sequence }} @@ -29,9 +29,7 @@
by {{ book.author }}
{{ book.genres.join(', ') }}
@@ -56,7 +54,8 @@ export default { default: () => {} }, isPodcast: Boolean, - bookCoverAspectRatio: Number + bookCoverAspectRatio: Number, + currentBookDuration: Number }, data() { return { @@ -65,12 +64,27 @@ export default { }, computed: { bookCovers() { - return this.book.covers ? this.book.covers || [] : [] + return this.book.covers || [] + }, + bookDuration() { + return (this.book.duration || 0) * 60 + }, + bookDurationComparison() { + if (!this.book.duration || !this.currentBookDuration) return '' + const currentBookDurationMinutes = Math.floor(this.currentBookDuration / 60) + let differenceInMinutes = currentBookDurationMinutes - this.book.duration + if (differenceInMinutes < 0) { + differenceInMinutes = Math.abs(differenceInMinutes) + return `(${this.$elapsedPrettyExtended(differenceInMinutes * 60, false, false)} shorter)` + } else if (differenceInMinutes > 0) { + return `(${this.$elapsedPrettyExtended(differenceInMinutes * 60, false, false)} longer)` + } + return '(exact match)' } }, methods: { selectMatch() { - var book = { ...this.book } + const book = { ...this.book } book.cover = this.selectedCover this.$emit('select', book) }, diff --git a/client/components/cards/ItemTaskRunningCard.vue b/client/components/cards/ItemTaskRunningCard.vue index 63a3644d..d284c505 100644 --- a/client/components/cards/ItemTaskRunningCard.vue +++ b/client/components/cards/ItemTaskRunningCard.vue @@ -1,10 +1,8 @@{{ title }}
@@ -12,7 +10,9 @@{{ description }}
{{ failedMessage }}
+Canceling...
{{ title }}
{{ $strings.LabelEnable }}
{{ title }}