diff --git a/client/components/app/BookShelfToolbar.vue b/client/components/app/BookShelfToolbar.vue index 6e367c3f..74a8ab40 100644 --- a/client/components/app/BookShelfToolbar.vue +++ b/client/components/app/BookShelfToolbar.vue @@ -119,7 +119,7 @@ export default { const items = [ { - text: this.isSeriesFinished ? 'Mark series as not finished' : 'Mark series as finished', + text: this.isSeriesFinished ? this.$strings.MessageMarkAsNotFinished : this.$strings.MessageMarkAsFinished, action: 'mark-series-finished' } ] @@ -334,10 +334,8 @@ export default { markSeriesFinished() { const newIsFinished = !this.isSeriesFinished - const message = newIsFinished ? 'Are you sure you want to mark all books in this series as finished?' : 'Are you sure you want to reset your progress on all books in this series?' - const payload = { - message, + message: newIsFinished ? this.$strings.MessageConfirmMarkSeriesFinished : this.$strings.MessageConfirmMarkSeriesNotFinished, callback: (confirmed) => { if (confirmed) { this.processingSeries = true @@ -351,13 +349,14 @@ export default { this.$axios .patch(`/api/me/progress/batch/update`, updateProgressPayloads) .then(() => { - this.$toast.success('Series update success') + this.$toast.success(this.$strings.ToastSeriesUpdateSuccess) this.selectedSeries.progress.isFinished = newIsFinished - this.processingSeries = false }) .catch((error) => { - this.$toast.error('Series update failed') + this.$toast.error(this.$strings.ToastSeriesUpdateFailed) console.error('Failed to batch update read/not read', error) + }) + .finally(() => { this.processingSeries = false }) } diff --git a/client/strings/de.json b/client/strings/de.json index ea395249..3aa7393b 100644 --- a/client/strings/de.json +++ b/client/strings/de.json @@ -254,7 +254,6 @@ "LabelLogLevelInfo": "Informationen", "LabelLogLevelWarn": "Warnungen", "LabelLookForNewEpisodesAfterDate": "Suchen nach neuen Episoden nach diesem Datum", - "LabelMarkSeries": "Serien markieren als", "LabelMediaPlayer": "Mediaplayer", "LabelMediaType": "Medientyp", "LabelMetadataProvider": "Metadatenanbieter", @@ -443,6 +442,8 @@ "MessageConfirmDeleteLibrary": "Sind Sie sicher, dass Sie die Bibliothek \"{0}\" dauerhaft löschen wollen?", "MessageConfirmDeleteSession": "Sind Sie sicher, dass Sie diese Sitzung löschen möchten?", "MessageConfirmForceReScan": "Sind Sie sicher, dass Sie einen erneuten Scanvorgang erzwingen wollen?", + "MessageConfirmMarkSeriesFinished": "Are you sure you want to mark all books in this series as finished?", + "MessageConfirmMarkSeriesNotFinished": "Are you sure you want to mark all books in this series as not finished?", "MessageConfirmRemoveCollection": "Sind Sie sicher, dass Sie die Sammlung \"{0}\" löschen wollen?", "MessageConfirmRemoveEpisode": "Sind Sie sicher, dass Sie die Episode \"{0}\" löschen möchten?", "MessageConfirmRemoveEpisodes": "Sind Sie sicher, dass Sie {0} Episoden löschen wollen?", @@ -603,6 +604,8 @@ "ToastRemoveItemFromCollectionSuccess": "Medium aus der Sammlung gelöscht", "ToastRSSFeedCloseFailed": "RSS-Feed konnte nicht geschlossen werden", "ToastRSSFeedCloseSuccess": "RSS-Feed geschlossen", + "ToastSeriesUpdateFailed": "Series update failed", + "ToastSeriesUpdateSuccess": "Series update success", "ToastSessionDeleteFailed": "Sitzung konnte nicht gelöscht werden", "ToastSessionDeleteSuccess": "Sitzung gelöscht", "ToastSocketConnected": "Verbindung zum WebSocket hergestellt", diff --git a/client/strings/en-us.json b/client/strings/en-us.json index 85e504bb..377139f2 100644 --- a/client/strings/en-us.json +++ b/client/strings/en-us.json @@ -254,7 +254,6 @@ "LabelLogLevelInfo": "Info", "LabelLogLevelWarn": "Warn", "LabelLookForNewEpisodesAfterDate": "Look for new episodes after this date", - "LabelMarkSeries": "Mark Series", "LabelMediaPlayer": "Media Player", "LabelMediaType": "Media Type", "LabelMetadataProvider": "Metadata Provider", @@ -443,6 +442,8 @@ "MessageConfirmDeleteLibrary": "Are you sure you want to permanently delete library \"{0}\"?", "MessageConfirmDeleteSession": "Are you sure you want to delete this session?", "MessageConfirmForceReScan": "Are you sure you want to force re-scan?", + "MessageConfirmMarkSeriesFinished": "Are you sure you want to mark all books in this series as finished?", + "MessageConfirmMarkSeriesNotFinished": "Are you sure you want to mark all books in this series as not finished?", "MessageConfirmRemoveCollection": "Are you sure you want to remove collection \"{0}\"?", "MessageConfirmRemoveEpisode": "Are you sure you want to remove episode \"{0}\"?", "MessageConfirmRemoveEpisodes": "Are you sure you want to remove {0} episodes?", @@ -603,6 +604,8 @@ "ToastRemoveItemFromCollectionSuccess": "Item removed from collection", "ToastRSSFeedCloseFailed": "Failed to close RSS feed", "ToastRSSFeedCloseSuccess": "RSS feed closed", + "ToastSeriesUpdateFailed": "Series update failed", + "ToastSeriesUpdateSuccess": "Series update success", "ToastSessionDeleteFailed": "Failed to delete session", "ToastSessionDeleteSuccess": "Session deleted", "ToastSocketConnected": "Socket connected", diff --git a/client/strings/es.json b/client/strings/es.json index 85e504bb..377139f2 100644 --- a/client/strings/es.json +++ b/client/strings/es.json @@ -254,7 +254,6 @@ "LabelLogLevelInfo": "Info", "LabelLogLevelWarn": "Warn", "LabelLookForNewEpisodesAfterDate": "Look for new episodes after this date", - "LabelMarkSeries": "Mark Series", "LabelMediaPlayer": "Media Player", "LabelMediaType": "Media Type", "LabelMetadataProvider": "Metadata Provider", @@ -443,6 +442,8 @@ "MessageConfirmDeleteLibrary": "Are you sure you want to permanently delete library \"{0}\"?", "MessageConfirmDeleteSession": "Are you sure you want to delete this session?", "MessageConfirmForceReScan": "Are you sure you want to force re-scan?", + "MessageConfirmMarkSeriesFinished": "Are you sure you want to mark all books in this series as finished?", + "MessageConfirmMarkSeriesNotFinished": "Are you sure you want to mark all books in this series as not finished?", "MessageConfirmRemoveCollection": "Are you sure you want to remove collection \"{0}\"?", "MessageConfirmRemoveEpisode": "Are you sure you want to remove episode \"{0}\"?", "MessageConfirmRemoveEpisodes": "Are you sure you want to remove {0} episodes?", @@ -603,6 +604,8 @@ "ToastRemoveItemFromCollectionSuccess": "Item removed from collection", "ToastRSSFeedCloseFailed": "Failed to close RSS feed", "ToastRSSFeedCloseSuccess": "RSS feed closed", + "ToastSeriesUpdateFailed": "Series update failed", + "ToastSeriesUpdateSuccess": "Series update success", "ToastSessionDeleteFailed": "Failed to delete session", "ToastSessionDeleteSuccess": "Session deleted", "ToastSocketConnected": "Socket connected", diff --git a/client/strings/fr.json b/client/strings/fr.json index 28f380d9..ed91605c 100644 --- a/client/strings/fr.json +++ b/client/strings/fr.json @@ -254,7 +254,6 @@ "LabelLogLevelInfo": "Info", "LabelLogLevelWarn": "Warn", "LabelLookForNewEpisodesAfterDate": "Rechercher de Nouveaux Episode après cette Date", - "LabelMarkSeries": "Marquer la Série", "LabelMediaPlayer": "Lecteur Multimédia", "LabelMediaType": "Type de Média", "LabelMetadataProvider": "Fournisseur de Métadonnées", @@ -443,6 +442,8 @@ "MessageConfirmDeleteLibrary": "Etes vous certain de vouloir supprimer définitivement la bibliothèque \"{0}\"?", "MessageConfirmDeleteSession": "Etes vous certain de vouloir supprimer cette session?", "MessageConfirmForceReScan": "Etes vous certain de vouloir lancer une Analyse Forcée?", + "MessageConfirmMarkSeriesFinished": "Are you sure you want to mark all books in this series as finished?", + "MessageConfirmMarkSeriesNotFinished": "Are you sure you want to mark all books in this series as not finished?", "MessageConfirmRemoveCollection": "Etes vous certain de vouloir supprimer la collection \"{0}\"?", "MessageConfirmRemoveEpisode": "Etes vous certain de vouloir supprimer l'épisode \"{0}\"?", "MessageConfirmRemoveEpisodes": "Etes vous certain de vouloir supprimer {0} épisodes?", @@ -603,6 +604,8 @@ "ToastRemoveItemFromCollectionSuccess": "Article supprimé de la collection", "ToastRSSFeedCloseFailed": "Échec de la fermeture du flux RSS", "ToastRSSFeedCloseSuccess": "Flux RSS fermé", + "ToastSeriesUpdateFailed": "Series update failed", + "ToastSeriesUpdateSuccess": "Series update success", "ToastSessionDeleteFailed": "Échec de la suppression de session", "ToastSessionDeleteSuccess": "Session supprimée", "ToastSocketConnected": "WebSocket connecté", diff --git a/client/strings/hr.json b/client/strings/hr.json index 2da5d581..4da4f931 100644 --- a/client/strings/hr.json +++ b/client/strings/hr.json @@ -254,7 +254,6 @@ "LabelLogLevelInfo": "Info", "LabelLogLevelWarn": "Warn", "LabelLookForNewEpisodesAfterDate": "Traži nove epizode nakon ovog datuma", - "LabelMarkSeries": "Označi seriju", "LabelMediaPlayer": "Media Player", "LabelMediaType": "Media Type", "LabelMetadataProvider": "Poslužitelj metapodataka ", @@ -443,6 +442,8 @@ "MessageConfirmDeleteLibrary": "Jeste li sigurni da želite trajno obrisati biblioteku \"{0}\"?", "MessageConfirmDeleteSession": "Jeste li sigurni da želite obrisati ovu sesiju?", "MessageConfirmForceReScan": "Jeste li sigurni da želite ponovno skenirati?", + "MessageConfirmMarkSeriesFinished": "Are you sure you want to mark all books in this series as finished?", + "MessageConfirmMarkSeriesNotFinished": "Are you sure you want to mark all books in this series as not finished?", "MessageConfirmRemoveCollection": "AJeste li sigurni da želite obrisati kolekciju \"{0}\"?", "MessageConfirmRemoveEpisode": "Jeste li sigurni da želite obrisati epizodu \"{0}\"?", "MessageConfirmRemoveEpisodes": "Jeste li sigurni da želite obrisati {0} epizoda/-u?", @@ -603,6 +604,8 @@ "ToastRemoveItemFromCollectionSuccess": "Stavka uklonjena iz kolekcije", "ToastRSSFeedCloseFailed": "Neuspješno zatvaranje RSS Feeda", "ToastRSSFeedCloseSuccess": "RSS Feed zatvoren", + "ToastSeriesUpdateFailed": "Series update failed", + "ToastSeriesUpdateSuccess": "Series update success", "ToastSessionDeleteFailed": "Neuspješno brisanje serije", "ToastSessionDeleteSuccess": "Sesija obrisana", "ToastSocketConnected": "Socket connected", diff --git a/client/strings/it.json b/client/strings/it.json index 3dcaf76c..1c9d03d9 100644 --- a/client/strings/it.json +++ b/client/strings/it.json @@ -254,7 +254,6 @@ "LabelLogLevelInfo": "Info", "LabelLogLevelWarn": "Allarme", "LabelLookForNewEpisodesAfterDate": "Cerca nuovi episodi dopo questa data", - "LabelMarkSeries": "Segna Serie", "LabelMediaPlayer": "Media Player", "LabelMediaType": "Tipo Media", "LabelMetadataProvider": "Metadata Provider", @@ -443,6 +442,8 @@ "MessageConfirmDeleteLibrary": "Sei sicuro di voler eliminare definitivamente la libreria \"{0}\"?", "MessageConfirmDeleteSession": "Sei sicuro di voler eliminare questa sessione?", "MessageConfirmForceReScan": "Sei sicuro di voler forzare una nuova scansione?", + "MessageConfirmMarkSeriesFinished": "Are you sure you want to mark all books in this series as finished?", + "MessageConfirmMarkSeriesNotFinished": "Are you sure you want to mark all books in this series as not finished?", "MessageConfirmRemoveCollection": "Sei sicuro di voler rimuovere la Raccolta \"{0}\"?", "MessageConfirmRemoveEpisode": "Sei sicuro di voler rimuovere l'episodio \"{0}\"?", "MessageConfirmRemoveEpisodes": "Sei sicuro di voler rimuovere {0} episodi?", @@ -603,6 +604,8 @@ "ToastRemoveItemFromCollectionSuccess": "Oggetto rimosso dalla Raccolta", "ToastRSSFeedCloseFailed": "Errore chiusura RSS feed", "ToastRSSFeedCloseSuccess": "RSS feed chiuso", + "ToastSeriesUpdateFailed": "Series update failed", + "ToastSeriesUpdateSuccess": "Series update success", "ToastSessionDeleteFailed": "Errore eliminazione sessione", "ToastSessionDeleteSuccess": "Sessione cancellata", "ToastSocketConnected": "Socket connesso", diff --git a/client/strings/pl.json b/client/strings/pl.json index 87409fff..7e0fa9db 100644 --- a/client/strings/pl.json +++ b/client/strings/pl.json @@ -254,7 +254,6 @@ "LabelLogLevelInfo": "Informacja", "LabelLogLevelWarn": "Ostrzeżenie", "LabelLookForNewEpisodesAfterDate": "Szukaj nowych odcinków po dacie", - "LabelMarkSeries": "Oznacz serię", "LabelMediaPlayer": "Odtwarzacz", "LabelMediaType": "Typ mediów", "LabelMetadataProvider": "Dostawca metadanych", @@ -443,6 +442,8 @@ "MessageConfirmDeleteLibrary": "Czy na pewno chcesz trwale usunąć bibliotekę \"{0}\"?", "MessageConfirmDeleteSession": "Czy na pewno chcesz usunąć tę sesję?", "MessageConfirmForceReScan": "Czy na pewno chcesz wymusić ponowne skanowanie?", + "MessageConfirmMarkSeriesFinished": "Are you sure you want to mark all books in this series as finished?", + "MessageConfirmMarkSeriesNotFinished": "Are you sure you want to mark all books in this series as not finished?", "MessageConfirmRemoveCollection": "Czy na pewno chcesz usunąć kolekcję \"{0}\"?", "MessageConfirmRemoveEpisode": "Czy na pewno chcesz usunąć odcinek \"{0}\"?", "MessageConfirmRemoveEpisodes": "Czy na pewno chcesz usunąć {0} odcinki?", @@ -603,6 +604,8 @@ "ToastRemoveItemFromCollectionSuccess": "Pozycja usunięta z kolekcji", "ToastRSSFeedCloseFailed": "Zamknięcie kanału RSS nie powiodło się", "ToastRSSFeedCloseSuccess": "Zamknięcie kanału RSS powiodło się", + "ToastSeriesUpdateFailed": "Series update failed", + "ToastSeriesUpdateSuccess": "Series update success", "ToastSessionDeleteFailed": "Nie udało się usunąć sesji", "ToastSessionDeleteSuccess": "Sesja usunięta", "ToastSocketConnected": "Nawiązano połączenie z serwerem", diff --git a/client/strings/zh-cn.json b/client/strings/zh-cn.json index 741f2674..b7ed2c52 100644 --- a/client/strings/zh-cn.json +++ b/client/strings/zh-cn.json @@ -254,7 +254,6 @@ "LabelLogLevelInfo": "信息", "LabelLogLevelWarn": "警告", "LabelLookForNewEpisodesAfterDate": "在此日期后查找新剧集", - "LabelMarkSeries": "标记系列", "LabelMediaPlayer": "媒体播放器", "LabelMediaType": "媒体类型", "LabelMetadataProvider": "元数据提供者", @@ -443,6 +442,8 @@ "MessageConfirmDeleteLibrary": "你确定要永久删除媒体库 \"{0}\"?", "MessageConfirmDeleteSession": "你确定要删除此会话吗?", "MessageConfirmForceReScan": "你确定要强制重新扫描吗?", + "MessageConfirmMarkSeriesFinished": "Are you sure you want to mark all books in this series as finished?", + "MessageConfirmMarkSeriesNotFinished": "Are you sure you want to mark all books in this series as not finished?", "MessageConfirmRemoveCollection": "您确定要移除收藏 \"{0}\"?", "MessageConfirmRemoveEpisode": "您确定要移除剧集 \"{0}\"?", "MessageConfirmRemoveEpisodes": "你确定要移除 {0} 剧集?", @@ -603,6 +604,8 @@ "ToastRemoveItemFromCollectionSuccess": "项目已从收藏中删除", "ToastRSSFeedCloseFailed": "关闭 RSS 源失败", "ToastRSSFeedCloseSuccess": "RSS 源已关闭", + "ToastSeriesUpdateFailed": "Series update failed", + "ToastSeriesUpdateSuccess": "Series update success", "ToastSessionDeleteFailed": "删除会话失败", "ToastSessionDeleteSuccess": "会话已删除", "ToastSocketConnected": "网络已连接",