diff --git a/client/components/modals/podcast/EpisodeFeed.vue b/client/components/modals/podcast/EpisodeFeed.vue index 9c199325..b6c135b9 100644 --- a/client/components/modals/podcast/EpisodeFeed.vue +++ b/client/components/modals/podcast/EpisodeFeed.vue @@ -39,7 +39,7 @@
- + {{ buttonText }}

All episodes are downloaded

@@ -99,15 +99,16 @@ export default { return Object.keys(this.selectedEpisodes).filter((key) => !!this.selectedEpisodes[key]) }, buttonText() { - if (!this.episodesSelected.length) return 'No Episodes Selected' - return `Download ${this.episodesSelected.length} Episode${this.episodesSelected.length > 1 ? 's' : ''}` + if (!this.episodesSelected.length) return this.$strings.LabelNoEpisodesSelected + if (this.episodesSelected.length === 1) return `${this.$strings.LabelDownload} ${this.$strings.LabelEpisode.toLowerCase()}` + return this.$getString('LabelDownloadNEpisodes', [this.episodesSelected.length]) }, itemEpisodes() { if (!this.libraryItem) return [] return this.libraryItem.media.episodes || [] }, itemEpisodeMap() { - var map = {} + const map = {} this.itemEpisodes.forEach((item) => { if (item.enclosure) map[item.enclosure.url.split('?')[0]] = true }) @@ -116,29 +117,38 @@ export default { episodesList() { return this.episodesCleaned.filter((episode) => { if (!this.searchText) return true - return (episode.title && episode.title.toLowerCase().includes(this.searchText)) || (episode.subtitle && episode.subtitle.toLowerCase().includes(this.searchText)) + return episode.title?.toLowerCase().includes(this.searchText) || episode.subtitle?.toLowerCase().includes(this.searchText) }) + }, + selectAllLabel() { + if (this.episodesList.length === this.episodesCleaned.length) { + return this.$strings.LabelSelectAllEpisodes + } + const episodesNotDownloaded = this.episodesList.filter((ep) => !this.itemEpisodeMap[ep.cleanUrl]).length + return this.$getString('LabelSelectEpisodesShowing', [episodesNotDownloaded]) } }, methods: { inputUpdate() { clearTimeout(this.searchTimeout) this.searchTimeout = setTimeout(() => { - if (!this.search || !this.search.trim()) { + if (!this.search?.trim()) { this.searchText = '' + this.checkSetIsSelectedAll() return } this.searchText = this.search.toLowerCase().trim() + this.checkSetIsSelectedAll() }, 500) }, toggleSelectAll(val) { - for (const episode of this.episodesCleaned) { + for (const episode of this.episodesList) { if (this.itemEpisodeMap[episode.cleanUrl]) this.selectedEpisodes[episode.cleanUrl] = false else this.$set(this.selectedEpisodes, episode.cleanUrl, val) } }, checkSetIsSelectedAll() { - for (const episode of this.episodesCleaned) { + for (const episode of this.episodesList) { if (!this.itemEpisodeMap[episode.cleanUrl] && !this.selectedEpisodes[episode.cleanUrl]) { this.selectAll = false return @@ -147,19 +157,19 @@ export default { this.selectAll = true }, toggleSelectEpisode(episode) { - if (this.itemEpisodeMap[episode.enclosure.url?.split('?')[0]]) return + if (this.itemEpisodeMap[episode.cleanUrl]) return this.$set(this.selectedEpisodes, episode.cleanUrl, !this.selectedEpisodes[episode.cleanUrl]) this.checkSetIsSelectedAll() }, submit() { - var episodesToDownload = [] + let episodesToDownload = [] if (this.episodesSelected.length) { episodesToDownload = this.episodesSelected.map((cleanUrl) => this.episodesCleaned.find((ep) => ep.cleanUrl == cleanUrl)) } - var payloadSize = JSON.stringify(episodesToDownload).length - var sizeInMb = payloadSize / 1024 / 1024 - var sizeInMbPretty = sizeInMb.toFixed(2) + 'MB' + const payloadSize = JSON.stringify(episodesToDownload).length + const sizeInMb = payloadSize / 1024 / 1024 + const sizeInMbPretty = sizeInMb.toFixed(2) + 'MB' console.log('Request size', sizeInMb) if (sizeInMb > 4.99) { return this.$toast.error(`Request is too large (${sizeInMbPretty}) should be < 5Mb`) @@ -174,10 +184,9 @@ export default { this.show = false }) .catch((error) => { - var errorMsg = error.response && error.response.data ? error.response.data : 'Failed to download episodes' console.error('Failed to download episodes', error) this.processing = false - this.$toast.error(errorMsg) + this.$toast.error(error.response?.data || 'Failed to download episodes') this.selectedEpisodes = {} this.selectAll = false diff --git a/client/plugins/i18n.js b/client/plugins/i18n.js index 10f705b4..8f8860f1 100644 --- a/client/plugins/i18n.js +++ b/client/plugins/i18n.js @@ -34,7 +34,7 @@ Vue.prototype.$strings = { ...enUsStrings } Vue.prototype.$getString = (key, subs) => { if (!Vue.prototype.$strings[key]) return '' - if (subs && Array.isArray(subs) && subs.length) { + if (subs?.length && Array.isArray(subs)) { return supplant(Vue.prototype.$strings[key], subs) } return Vue.prototype.$strings[key] diff --git a/client/strings/de.json b/client/strings/de.json index a291baf6..62a0c2b1 100644 --- a/client/strings/de.json +++ b/client/strings/de.json @@ -103,6 +103,7 @@ "HeaderEmailSettings": "Email Settings", "HeaderEpisodes": "Episoden", "HeaderEreaderDevices": "Ereader Devices", + "HeaderEreaderSettings": "Ereader Settings", "HeaderFiles": "Dateien", "HeaderFindChapters": "Kapitel suchen", "HeaderIgnoredFiles": "Ignorierte Dateien", @@ -154,6 +155,7 @@ "HeaderStatsRecentSessions": "Neueste Ereignisse", "HeaderStatsTop10Authors": "Top 10 Autoren", "HeaderStatsTop5Genres": "Top 5 Kategorien", + "HeaderTableOfContents": "Table of Contents", "HeaderTools": "Werkzeuge", "HeaderUpdateAccount": "Konto aktualisieren", "HeaderUpdateAuthor": "Autor aktualisieren", @@ -221,6 +223,7 @@ "LabelDiscFromFilename": "CD aus dem Dateinamen", "LabelDiscFromMetadata": "CD aus den Metadaten", "LabelDownload": "Herunterladen", + "LabelDownloadNEpisodes": "Download {0} episodes", "LabelDuration": "Laufzeit", "LabelDurationFound": "Gefundene Laufzeit:", "LabelEbook": "Ebook", @@ -249,6 +252,7 @@ "LabelFinished": "beendet", "LabelFolder": "Ordner", "LabelFolders": "Verzeichnisse", + "LabelFontScale": "Font scale", "LabelFormat": "Format", "LabelGenre": "Kategorie", "LabelGenres": "Kategorien", @@ -280,12 +284,16 @@ "LabelLastSeen": "Zuletzt angesehen", "LabelLastTime": "Letztes Mal", "LabelLastUpdate": "Letzte Aktualisierung", + "LabelLayout": "Layout", + "LabelLayoutSinglePage": "Single page", + "LabelLayoutSplitPage": "Split page", "LabelLess": "Weniger", "LabelLibrariesAccessibleToUser": "Für Benutzer zugängliche Bibliotheken", "LabelLibrary": "Bibliothek", "LabelLibraryItem": "Bibliothekseintrag", "LabelLibraryName": "Bibliotheksname", "LabelLimit": "Begrenzung", + "LabelLineSpacing": "Line spacing", "LabelListenAgain": "Erneut anhören", "LabelLogLevelDebug": "Fehlersuche", "LabelLogLevelInfo": "Informationen", @@ -310,6 +318,7 @@ "LabelNewPassword": "Neues Passwort", "LabelNextBackupDate": "Nächstes Sicherungsdatum", "LabelNextScheduledRun": "Nächster planmäßiger Durchlauf", + "LabelNoEpisodesSelected": "No episodes selected", "LabelNotes": "Hinweise", "LabelNotFinished": "nicht beendet", "LabelNotificationAppriseURL": "Apprise URL(s)", @@ -369,6 +378,8 @@ "LabelSearchTitle": "Titel", "LabelSearchTitleOrASIN": "Titel oder ASIN", "LabelSeason": "Staffel", + "LabelSelectAllEpisodes": "Select all episodes", + "LabelSelectEpisodesShowing": "Select {0} episodes showing", "LabelSendEbookToDevice": "Send Ebook to...", "LabelSequence": "Reihenfolge", "LabelSeries": "Serien", @@ -388,6 +399,8 @@ "LabelSettingsExperimentalFeaturesHelp": "Funktionen welche sich in der Entwicklung befinden, benötigen Ihr Feedback und Ihre Hilfe beim Testen. Klicken Sie hier, um die Github-Diskussion zu öffnen.", "LabelSettingsFindCovers": "Suche Titelbilder", "LabelSettingsFindCoversHelp": "Wenn Ihr Medium kein eingebettetes Titelbild oder kein Titelbild im Ordner hat, versucht der Scanner, ein Titelbild online zu finden.
Hinweis: Dies verlängert die Scandauer", + "LabelSettingsHideSingleBookSeries": "Hide single book series", + "LabelSettingsHideSingleBookSeriesHelp": "Series that have a single book will be hidden from the series page and home page shelves.", "LabelSettingsHomePageBookshelfView": "Startseite verwendet die Bücherregalansicht", "LabelSettingsLibraryBookshelfView": "Bibliothek verwendet die Bücherregalansicht", "LabelSettingsOverdriveMediaMarkers": "Verwende Overdrive Media Marker für Kapitel", @@ -440,6 +453,9 @@ "LabelTagsAccessibleToUser": "Für Benutzer zugängliche Schlagwörter", "LabelTagsNotAccessibleToUser": "Für Benutzer nicht zugängliche Schlagwörter", "LabelTasks": "Laufende Aufgaben", + "LabelTheme": "Theme", + "LabelThemeDark": "Dark", + "LabelThemeLight": "Light", "LabelTimeBase": "Basiszeit", "LabelTimeListened": "Gehörte Zeit", "LabelTimeListenedToday": "Heute gehörte Zeit", diff --git a/client/strings/en-us.json b/client/strings/en-us.json index 36fdec68..6348ee0c 100644 --- a/client/strings/en-us.json +++ b/client/strings/en-us.json @@ -223,6 +223,7 @@ "LabelDiscFromFilename": "Disc from Filename", "LabelDiscFromMetadata": "Disc from Metadata", "LabelDownload": "Download", + "LabelDownloadNEpisodes": "Download {0} episodes", "LabelDuration": "Duration", "LabelDurationFound": "Duration found:", "LabelEbook": "Ebook", @@ -317,6 +318,7 @@ "LabelNewPassword": "New Password", "LabelNextBackupDate": "Next backup date", "LabelNextScheduledRun": "Next scheduled run", + "LabelNoEpisodesSelected": "No episodes selected", "LabelNotes": "Notes", "LabelNotFinished": "Not Finished", "LabelNotificationAppriseURL": "Apprise URL(s)", @@ -376,6 +378,8 @@ "LabelSearchTitle": "Search Title", "LabelSearchTitleOrASIN": "Search Title or ASIN", "LabelSeason": "Season", + "LabelSelectAllEpisodes": "Select all episodes", + "LabelSelectEpisodesShowing": "Select {0} episodes showing", "LabelSendEbookToDevice": "Send Ebook to...", "LabelSequence": "Sequence", "LabelSeries": "Series", diff --git a/client/strings/es.json b/client/strings/es.json index 5be5ab61..ad33e6ec 100644 --- a/client/strings/es.json +++ b/client/strings/es.json @@ -103,6 +103,7 @@ "HeaderEmailSettings": "Email Settings", "HeaderEpisodes": "Episodios", "HeaderEreaderDevices": "Ereader Devices", + "HeaderEreaderSettings": "Ereader Settings", "HeaderFiles": "Elemento", "HeaderFindChapters": "Buscar Capitulo", "HeaderIgnoredFiles": "Ignorar Elemento", @@ -154,6 +155,7 @@ "HeaderStatsRecentSessions": "Sesiones Recientes", "HeaderStatsTop10Authors": "Top 10 Autores", "HeaderStatsTop5Genres": "Top 5 Géneros", + "HeaderTableOfContents": "Table of Contents", "HeaderTools": "Herramientas", "HeaderUpdateAccount": "Actualizar Cuenta", "HeaderUpdateAuthor": "Actualizar Autor", @@ -221,6 +223,7 @@ "LabelDiscFromFilename": "Disco a partir del Nombre del Archivo", "LabelDiscFromMetadata": "Disco a partir de Metadata", "LabelDownload": "Descargar", + "LabelDownloadNEpisodes": "Download {0} episodes", "LabelDuration": "Duración", "LabelDurationFound": "Duración Comprobada:", "LabelEbook": "Ebook", @@ -249,6 +252,7 @@ "LabelFinished": "Terminado", "LabelFolder": "Carpeta", "LabelFolders": "Carpetas", + "LabelFontScale": "Font scale", "LabelFormat": "Formato", "LabelGenre": "Genero", "LabelGenres": "Géneros", @@ -280,12 +284,16 @@ "LabelLastSeen": "Ultima Vez Visto", "LabelLastTime": "Ultima Vez", "LabelLastUpdate": "Ultima Actualización", + "LabelLayout": "Layout", + "LabelLayoutSinglePage": "Single page", + "LabelLayoutSplitPage": "Split page", "LabelLess": "Menos", "LabelLibrariesAccessibleToUser": "Bibliotecas Disponibles para el Usuario", "LabelLibrary": "Biblioteca", "LabelLibraryItem": "Elemento de Biblioteca", "LabelLibraryName": "Nombre de Biblioteca", "LabelLimit": "Limites", + "LabelLineSpacing": "Line spacing", "LabelListenAgain": "Escuchar Otra Vez", "LabelLogLevelDebug": "Debug", "LabelLogLevelInfo": "Info", @@ -310,6 +318,7 @@ "LabelNewPassword": "Nueva Contraseña", "LabelNextBackupDate": "Fecha del Siguiente Respaldo", "LabelNextScheduledRun": "Próxima Ejecución Programada", + "LabelNoEpisodesSelected": "No episodes selected", "LabelNotes": "Notas", "LabelNotFinished": "No Terminado", "LabelNotificationAppriseURL": "Apprise URL(s)", @@ -369,6 +378,8 @@ "LabelSearchTitle": "Buscar Titulo", "LabelSearchTitleOrASIN": "Buscar Titulo o ASIN", "LabelSeason": "Temporada", + "LabelSelectAllEpisodes": "Select all episodes", + "LabelSelectEpisodesShowing": "Select {0} episodes showing", "LabelSendEbookToDevice": "Send Ebook to...", "LabelSequence": "Secuencia", "LabelSeries": "Series", @@ -388,6 +399,8 @@ "LabelSettingsExperimentalFeaturesHelp": "Funciones en desarrollo sobre las que esperamos sus comentarios y experiencia. Haga click aquí para abrir una conversación en Github.", "LabelSettingsFindCovers": "Buscar Portadas", "LabelSettingsFindCoversHelp": "Si tu audiolibro no tiene una portada incluida o la portada no esta dentro de la carpeta, el escaneador tratara de encontrar una portada.
Nota: Esto extenderá el tiempo de escaneo", + "LabelSettingsHideSingleBookSeries": "Hide single book series", + "LabelSettingsHideSingleBookSeriesHelp": "Series that have a single book will be hidden from the series page and home page shelves.", "LabelSettingsHomePageBookshelfView": "La pagina de inicio usa la vista de librero", "LabelSettingsLibraryBookshelfView": "La biblioteca usa la vista de librero", "LabelSettingsOverdriveMediaMarkers": "Usar Markers de multimedia en Overdrive para estos capítulos", @@ -440,6 +453,9 @@ "LabelTagsAccessibleToUser": "Etiquetas Accessible para el Usuario", "LabelTagsNotAccessibleToUser": "Tags not Accessible to User", "LabelTasks": "Tareas Corriendo", + "LabelTheme": "Theme", + "LabelThemeDark": "Dark", + "LabelThemeLight": "Light", "LabelTimeBase": "Time Base", "LabelTimeListened": "Tiempo Escuchando", "LabelTimeListenedToday": "Tiempo Escuchando Hoy", diff --git a/client/strings/fr.json b/client/strings/fr.json index 6533fd87..17b229d1 100644 --- a/client/strings/fr.json +++ b/client/strings/fr.json @@ -103,6 +103,7 @@ "HeaderEmailSettings": "Configuration des e-mails", "HeaderEpisodes": "Épisodes", "HeaderEreaderDevices": "Lecteurs d'e-books", + "HeaderEreaderSettings": "Ereader Settings", "HeaderFiles": "Fichiers", "HeaderFindChapters": "Trouver les chapitres", "HeaderIgnoredFiles": "Fichiers Ignorés", @@ -154,6 +155,7 @@ "HeaderStatsRecentSessions": "Sessions récentes", "HeaderStatsTop10Authors": "Top 10 Auteurs", "HeaderStatsTop5Genres": "Top 5 Genres", + "HeaderTableOfContents": "Table of Contents", "HeaderTools": "Outils", "HeaderUpdateAccount": "Mettre à jour le compte", "HeaderUpdateAuthor": "Mettre à jour l’auteur", @@ -221,6 +223,7 @@ "LabelDiscFromFilename": "Disque depuis le fichier", "LabelDiscFromMetadata": "Disque depuis les métadonnées", "LabelDownload": "Téléchargement", + "LabelDownloadNEpisodes": "Download {0} episodes", "LabelDuration": "Durée", "LabelDurationFound": "Durée trouvée :", "LabelEbook": "E-book", @@ -249,6 +252,7 @@ "LabelFinished": "Fini(e)", "LabelFolder": "Dossier", "LabelFolders": "Dossiers", + "LabelFontScale": "Font scale", "LabelFormat": "Format", "LabelGenre": "Genre", "LabelGenres": "Genres", @@ -280,12 +284,16 @@ "LabelLastSeen": "Vu dernièrement", "LabelLastTime": "Progression", "LabelLastUpdate": "Dernière mise à jour", + "LabelLayout": "Layout", + "LabelLayoutSinglePage": "Single page", + "LabelLayoutSplitPage": "Split page", "LabelLess": "Moins", "LabelLibrariesAccessibleToUser": "Bibliothèque accessible à l’utilisateur", "LabelLibrary": "Bibliothèque", "LabelLibraryItem": "Article de bibliothèque", "LabelLibraryName": "Nom de la bibliothèque", "LabelLimit": "Limite", + "LabelLineSpacing": "Line spacing", "LabelListenAgain": "Écouter à nouveau", "LabelLogLevelDebug": "Debug", "LabelLogLevelInfo": "Info", @@ -310,6 +318,7 @@ "LabelNewPassword": "Nouveau mot de passe", "LabelNextBackupDate": "Date de la prochaine sauvegarde", "LabelNextScheduledRun": "Prochain lancement prévu", + "LabelNoEpisodesSelected": "No episodes selected", "LabelNotes": "Notes", "LabelNotFinished": "Non terminé(e)", "LabelNotificationAppriseURL": "URL(s) d’Apprise", @@ -369,6 +378,8 @@ "LabelSearchTitle": "Titre de recherche", "LabelSearchTitleOrASIN": "Recherche du titre ou ASIN", "LabelSeason": "Saison", + "LabelSelectAllEpisodes": "Select all episodes", + "LabelSelectEpisodesShowing": "Select {0} episodes showing", "LabelSendEbookToDevice": "Envoyer l'e-book à...", "LabelSequence": "Séquence", "LabelSeries": "Séries", @@ -388,6 +399,8 @@ "LabelSettingsExperimentalFeaturesHelp": "Fonctionnalités en cours de développement sur lesquelles nous attendons votre retour et expérience. Cliquez pour ouvrir la discussion Github.", "LabelSettingsFindCovers": "Chercher des couvertures de livre", "LabelSettingsFindCoversHelp": "Si votre livre audio ne possède pas de couverture intégrée ou une image de couverture dans le dossier, l’analyseur tentera de récupérer une couverture.
Attention, cela peut augmenter le temps d’analyse.", + "LabelSettingsHideSingleBookSeries": "Hide single book series", + "LabelSettingsHideSingleBookSeriesHelp": "Series that have a single book will be hidden from the series page and home page shelves.", "LabelSettingsHomePageBookshelfView": "La page d’accueil utilise la vue étagère", "LabelSettingsLibraryBookshelfView": "La bibliothèque utilise la vue étagère", "LabelSettingsOverdriveMediaMarkers": "Utiliser Overdrive Media Marker pour les chapitres", @@ -440,6 +453,9 @@ "LabelTagsAccessibleToUser": "Étiquettes accessibles à l’utilisateur", "LabelTagsNotAccessibleToUser": "Tags not Accessible to User", "LabelTasks": "Tâches en cours", + "LabelTheme": "Theme", + "LabelThemeDark": "Dark", + "LabelThemeLight": "Light", "LabelTimeBase": "Base de temps", "LabelTimeListened": "Temps d’écoute", "LabelTimeListenedToday": "Nombres d’écoutes Aujourd’hui", diff --git a/client/strings/gu.json b/client/strings/gu.json index 436ad88b..b52e765b 100644 --- a/client/strings/gu.json +++ b/client/strings/gu.json @@ -103,6 +103,7 @@ "HeaderEmailSettings": "Email Settings", "HeaderEpisodes": "Episodes", "HeaderEreaderDevices": "Ereader Devices", + "HeaderEreaderSettings": "Ereader Settings", "HeaderFiles": "Files", "HeaderFindChapters": "Find Chapters", "HeaderIgnoredFiles": "Ignored Files", @@ -154,6 +155,7 @@ "HeaderStatsRecentSessions": "Recent Sessions", "HeaderStatsTop10Authors": "Top 10 Authors", "HeaderStatsTop5Genres": "Top 5 Genres", + "HeaderTableOfContents": "Table of Contents", "HeaderTools": "Tools", "HeaderUpdateAccount": "Update Account", "HeaderUpdateAuthor": "Update Author", @@ -221,6 +223,7 @@ "LabelDiscFromFilename": "Disc from Filename", "LabelDiscFromMetadata": "Disc from Metadata", "LabelDownload": "Download", + "LabelDownloadNEpisodes": "Download {0} episodes", "LabelDuration": "Duration", "LabelDurationFound": "Duration found:", "LabelEbook": "Ebook", @@ -249,6 +252,7 @@ "LabelFinished": "Finished", "LabelFolder": "Folder", "LabelFolders": "Folders", + "LabelFontScale": "Font scale", "LabelFormat": "Format", "LabelGenre": "Genre", "LabelGenres": "Genres", @@ -280,12 +284,16 @@ "LabelLastSeen": "Last Seen", "LabelLastTime": "Last Time", "LabelLastUpdate": "Last Update", + "LabelLayout": "Layout", + "LabelLayoutSinglePage": "Single page", + "LabelLayoutSplitPage": "Split page", "LabelLess": "Less", "LabelLibrariesAccessibleToUser": "Libraries Accessible to User", "LabelLibrary": "Library", "LabelLibraryItem": "Library Item", "LabelLibraryName": "Library Name", "LabelLimit": "Limit", + "LabelLineSpacing": "Line spacing", "LabelListenAgain": "Listen Again", "LabelLogLevelDebug": "Debug", "LabelLogLevelInfo": "Info", @@ -310,6 +318,7 @@ "LabelNewPassword": "New Password", "LabelNextBackupDate": "Next backup date", "LabelNextScheduledRun": "Next scheduled run", + "LabelNoEpisodesSelected": "No episodes selected", "LabelNotes": "Notes", "LabelNotFinished": "Not Finished", "LabelNotificationAppriseURL": "Apprise URL(s)", @@ -369,6 +378,8 @@ "LabelSearchTitle": "Search Title", "LabelSearchTitleOrASIN": "Search Title or ASIN", "LabelSeason": "Season", + "LabelSelectAllEpisodes": "Select all episodes", + "LabelSelectEpisodesShowing": "Select {0} episodes showing", "LabelSendEbookToDevice": "Send Ebook to...", "LabelSequence": "Sequence", "LabelSeries": "Series", @@ -388,6 +399,8 @@ "LabelSettingsExperimentalFeaturesHelp": "Features in development that could use your feedback and help testing. Click to open github discussion.", "LabelSettingsFindCovers": "Find covers", "LabelSettingsFindCoversHelp": "If your audiobook does not have an embedded cover or a cover image inside the folder, the scanner will attempt to find a cover.
Note: This will extend scan time", + "LabelSettingsHideSingleBookSeries": "Hide single book series", + "LabelSettingsHideSingleBookSeriesHelp": "Series that have a single book will be hidden from the series page and home page shelves.", "LabelSettingsHomePageBookshelfView": "Home page use bookshelf view", "LabelSettingsLibraryBookshelfView": "Library use bookshelf view", "LabelSettingsOverdriveMediaMarkers": "Use Overdrive Media Markers for chapters", @@ -440,6 +453,9 @@ "LabelTagsAccessibleToUser": "Tags Accessible to User", "LabelTagsNotAccessibleToUser": "Tags not Accessible to User", "LabelTasks": "Tasks Running", + "LabelTheme": "Theme", + "LabelThemeDark": "Dark", + "LabelThemeLight": "Light", "LabelTimeBase": "Time Base", "LabelTimeListened": "Time Listened", "LabelTimeListenedToday": "Time Listened Today", diff --git a/client/strings/hi.json b/client/strings/hi.json index bef491d4..652f1f74 100644 --- a/client/strings/hi.json +++ b/client/strings/hi.json @@ -103,6 +103,7 @@ "HeaderEmailSettings": "Email Settings", "HeaderEpisodes": "Episodes", "HeaderEreaderDevices": "Ereader Devices", + "HeaderEreaderSettings": "Ereader Settings", "HeaderFiles": "Files", "HeaderFindChapters": "Find Chapters", "HeaderIgnoredFiles": "Ignored Files", @@ -154,6 +155,7 @@ "HeaderStatsRecentSessions": "Recent Sessions", "HeaderStatsTop10Authors": "Top 10 Authors", "HeaderStatsTop5Genres": "Top 5 Genres", + "HeaderTableOfContents": "Table of Contents", "HeaderTools": "Tools", "HeaderUpdateAccount": "Update Account", "HeaderUpdateAuthor": "Update Author", @@ -221,6 +223,7 @@ "LabelDiscFromFilename": "Disc from Filename", "LabelDiscFromMetadata": "Disc from Metadata", "LabelDownload": "Download", + "LabelDownloadNEpisodes": "Download {0} episodes", "LabelDuration": "Duration", "LabelDurationFound": "Duration found:", "LabelEbook": "Ebook", @@ -249,6 +252,7 @@ "LabelFinished": "Finished", "LabelFolder": "Folder", "LabelFolders": "Folders", + "LabelFontScale": "Font scale", "LabelFormat": "Format", "LabelGenre": "Genre", "LabelGenres": "Genres", @@ -280,12 +284,16 @@ "LabelLastSeen": "Last Seen", "LabelLastTime": "Last Time", "LabelLastUpdate": "Last Update", + "LabelLayout": "Layout", + "LabelLayoutSinglePage": "Single page", + "LabelLayoutSplitPage": "Split page", "LabelLess": "Less", "LabelLibrariesAccessibleToUser": "Libraries Accessible to User", "LabelLibrary": "Library", "LabelLibraryItem": "Library Item", "LabelLibraryName": "Library Name", "LabelLimit": "Limit", + "LabelLineSpacing": "Line spacing", "LabelListenAgain": "Listen Again", "LabelLogLevelDebug": "Debug", "LabelLogLevelInfo": "Info", @@ -310,6 +318,7 @@ "LabelNewPassword": "New Password", "LabelNextBackupDate": "Next backup date", "LabelNextScheduledRun": "Next scheduled run", + "LabelNoEpisodesSelected": "No episodes selected", "LabelNotes": "Notes", "LabelNotFinished": "Not Finished", "LabelNotificationAppriseURL": "Apprise URL(s)", @@ -369,6 +378,8 @@ "LabelSearchTitle": "Search Title", "LabelSearchTitleOrASIN": "Search Title or ASIN", "LabelSeason": "Season", + "LabelSelectAllEpisodes": "Select all episodes", + "LabelSelectEpisodesShowing": "Select {0} episodes showing", "LabelSendEbookToDevice": "Send Ebook to...", "LabelSequence": "Sequence", "LabelSeries": "Series", @@ -388,6 +399,8 @@ "LabelSettingsExperimentalFeaturesHelp": "Features in development that could use your feedback and help testing. Click to open github discussion.", "LabelSettingsFindCovers": "Find covers", "LabelSettingsFindCoversHelp": "If your audiobook does not have an embedded cover or a cover image inside the folder, the scanner will attempt to find a cover.
Note: This will extend scan time", + "LabelSettingsHideSingleBookSeries": "Hide single book series", + "LabelSettingsHideSingleBookSeriesHelp": "Series that have a single book will be hidden from the series page and home page shelves.", "LabelSettingsHomePageBookshelfView": "Home page use bookshelf view", "LabelSettingsLibraryBookshelfView": "Library use bookshelf view", "LabelSettingsOverdriveMediaMarkers": "Use Overdrive Media Markers for chapters", @@ -440,6 +453,9 @@ "LabelTagsAccessibleToUser": "Tags Accessible to User", "LabelTagsNotAccessibleToUser": "Tags not Accessible to User", "LabelTasks": "Tasks Running", + "LabelTheme": "Theme", + "LabelThemeDark": "Dark", + "LabelThemeLight": "Light", "LabelTimeBase": "Time Base", "LabelTimeListened": "Time Listened", "LabelTimeListenedToday": "Time Listened Today", diff --git a/client/strings/hr.json b/client/strings/hr.json index 5b80c8d0..b7ace807 100644 --- a/client/strings/hr.json +++ b/client/strings/hr.json @@ -103,6 +103,7 @@ "HeaderEmailSettings": "Email Settings", "HeaderEpisodes": "Epizode", "HeaderEreaderDevices": "Ereader Devices", + "HeaderEreaderSettings": "Ereader Settings", "HeaderFiles": "Datoteke", "HeaderFindChapters": "Pronađi poglavlja", "HeaderIgnoredFiles": "Zanemarene datoteke", @@ -154,6 +155,7 @@ "HeaderStatsRecentSessions": "Nedavne sesije", "HeaderStatsTop10Authors": "Top 10 autora", "HeaderStatsTop5Genres": "Top 5 žanrova", + "HeaderTableOfContents": "Table of Contents", "HeaderTools": "Alati", "HeaderUpdateAccount": "Aktualiziraj Korisnički račun", "HeaderUpdateAuthor": "Aktualiziraj autora", @@ -221,6 +223,7 @@ "LabelDiscFromFilename": "CD iz imena datoteke", "LabelDiscFromMetadata": "CD iz metapodataka", "LabelDownload": "Preuzmi", + "LabelDownloadNEpisodes": "Download {0} episodes", "LabelDuration": "Trajanje", "LabelDurationFound": "Pronađeno trajanje:", "LabelEbook": "Ebook", @@ -249,6 +252,7 @@ "LabelFinished": "Finished", "LabelFolder": "Folder", "LabelFolders": "Folderi", + "LabelFontScale": "Font scale", "LabelFormat": "Format", "LabelGenre": "Genre", "LabelGenres": "Žanrovi", @@ -280,12 +284,16 @@ "LabelLastSeen": "Zadnje pogledano", "LabelLastTime": "Prošli put", "LabelLastUpdate": "Zadnja aktualizacija", + "LabelLayout": "Layout", + "LabelLayoutSinglePage": "Single page", + "LabelLayoutSplitPage": "Split page", "LabelLess": "Manje", "LabelLibrariesAccessibleToUser": "Biblioteke pristupačne korisniku", "LabelLibrary": "Biblioteka", "LabelLibraryItem": "Stavka biblioteke", "LabelLibraryName": "Ime biblioteke", "LabelLimit": "Limit", + "LabelLineSpacing": "Line spacing", "LabelListenAgain": "Slušaj ponovno", "LabelLogLevelDebug": "Debug", "LabelLogLevelInfo": "Info", @@ -310,6 +318,7 @@ "LabelNewPassword": "Nova lozinka", "LabelNextBackupDate": "Next backup date", "LabelNextScheduledRun": "Next scheduled run", + "LabelNoEpisodesSelected": "No episodes selected", "LabelNotes": "Bilješke", "LabelNotFinished": "Nedovršeno", "LabelNotificationAppriseURL": "Apprise URL(s)", @@ -369,6 +378,8 @@ "LabelSearchTitle": "Traži naslov", "LabelSearchTitleOrASIN": "Traži naslov ili ASIN", "LabelSeason": "Sezona", + "LabelSelectAllEpisodes": "Select all episodes", + "LabelSelectEpisodesShowing": "Select {0} episodes showing", "LabelSendEbookToDevice": "Send Ebook to...", "LabelSequence": "Sekvenca", "LabelSeries": "Serije", @@ -388,6 +399,8 @@ "LabelSettingsExperimentalFeaturesHelp": "Features u razvoju trebaju vaš feedback i pomoć pri testiranju. Klikni da odeš to Github discussionsa.", "LabelSettingsFindCovers": "Pronađi covers", "LabelSettingsFindCoversHelp": "Ako audiobook nema embedani cover or a cover sliku unutar foldera, skener će probati pronaći cover.
Bilješka: Ovo će produžiti trjanje skeniranja", + "LabelSettingsHideSingleBookSeries": "Hide single book series", + "LabelSettingsHideSingleBookSeriesHelp": "Series that have a single book will be hidden from the series page and home page shelves.", "LabelSettingsHomePageBookshelfView": "Koristi bookshelf pogled za početnu stranicu", "LabelSettingsLibraryBookshelfView": "Koristi bookshelf pogled za biblioteku", "LabelSettingsOverdriveMediaMarkers": "Koristi Overdrive Media Markers za poglavlja", @@ -440,6 +453,9 @@ "LabelTagsAccessibleToUser": "Tags dostupni korisniku", "LabelTagsNotAccessibleToUser": "Tags not Accessible to User", "LabelTasks": "Tasks Running", + "LabelTheme": "Theme", + "LabelThemeDark": "Dark", + "LabelThemeLight": "Light", "LabelTimeBase": "Time Base", "LabelTimeListened": "Vremena odslušano", "LabelTimeListenedToday": "Vremena odslušano danas", diff --git a/client/strings/it.json b/client/strings/it.json index b6043575..339a65e8 100644 --- a/client/strings/it.json +++ b/client/strings/it.json @@ -103,6 +103,7 @@ "HeaderEmailSettings": "Email Settings", "HeaderEpisodes": "Episodi", "HeaderEreaderDevices": "Ereader Devices", + "HeaderEreaderSettings": "Ereader Settings", "HeaderFiles": "File", "HeaderFindChapters": "Trova Capitoli", "HeaderIgnoredFiles": "File Ignorati", @@ -154,6 +155,7 @@ "HeaderStatsRecentSessions": "Sessioni Recenti", "HeaderStatsTop10Authors": "Top 10 Autori", "HeaderStatsTop5Genres": "Top 5 Generi", + "HeaderTableOfContents": "Table of Contents", "HeaderTools": "Strumenti", "HeaderUpdateAccount": "Aggiorna Account", "HeaderUpdateAuthor": "Aggiorna Autore", @@ -221,6 +223,7 @@ "LabelDiscFromFilename": "Disco dal nome file", "LabelDiscFromMetadata": "Disco dal Metadata", "LabelDownload": "Download", + "LabelDownloadNEpisodes": "Download {0} episodes", "LabelDuration": "Durata", "LabelDurationFound": "Durata Trovata:", "LabelEbook": "Ebook", @@ -249,6 +252,7 @@ "LabelFinished": "Finita", "LabelFolder": "Cartella", "LabelFolders": "Cartelle", + "LabelFontScale": "Font scale", "LabelFormat": "Format", "LabelGenre": "Genere", "LabelGenres": "Generi", @@ -280,12 +284,16 @@ "LabelLastSeen": "Ultimi Visti", "LabelLastTime": "Ultima Volta", "LabelLastUpdate": "Ultimo Aggiornamento", + "LabelLayout": "Layout", + "LabelLayoutSinglePage": "Single page", + "LabelLayoutSplitPage": "Split page", "LabelLess": "Poco", "LabelLibrariesAccessibleToUser": "Librerie Accessibili agli Utenti", "LabelLibrary": "Libreria", "LabelLibraryItem": "Elementi della Library", "LabelLibraryName": "Nome Libreria", "LabelLimit": "Limiti", + "LabelLineSpacing": "Line spacing", "LabelListenAgain": "Ri-ascolta", "LabelLogLevelDebug": "Debug", "LabelLogLevelInfo": "Info", @@ -310,6 +318,7 @@ "LabelNewPassword": "Nuova Password", "LabelNextBackupDate": "Data Prossimo Backup", "LabelNextScheduledRun": "Data prossima esecuzione schedulata", + "LabelNoEpisodesSelected": "No episodes selected", "LabelNotes": "Note", "LabelNotFinished": "Da Completare", "LabelNotificationAppriseURL": "Apprendi URL(s)", @@ -369,6 +378,8 @@ "LabelSearchTitle": "Cerca Titolo", "LabelSearchTitleOrASIN": "Cerca titolo o ASIN", "LabelSeason": "Stagione", + "LabelSelectAllEpisodes": "Select all episodes", + "LabelSelectEpisodesShowing": "Select {0} episodes showing", "LabelSendEbookToDevice": "Send Ebook to...", "LabelSequence": "Sequenza", "LabelSeries": "Serie", @@ -388,6 +399,8 @@ "LabelSettingsExperimentalFeaturesHelp": "Funzionalità in fase di sviluppo che potrebbero utilizzare i tuoi feedback e aiutare i test. Fare clic per aprire la discussione github.", "LabelSettingsFindCovers": "Trova covers", "LabelSettingsFindCoversHelp": "Se il tuo audiolibro non ha una copertina incorporata o un'immagine di copertina all'interno della cartella, questa funzione tenterà di trovare una copertina.
Nota: aumenta il tempo di scansione", + "LabelSettingsHideSingleBookSeries": "Hide single book series", + "LabelSettingsHideSingleBookSeriesHelp": "Series that have a single book will be hidden from the series page and home page shelves.", "LabelSettingsHomePageBookshelfView": "Home page con sfondo legno", "LabelSettingsLibraryBookshelfView": "Libreria con sfondo legno", "LabelSettingsOverdriveMediaMarkers": "Usa Overdrive Media Markers per i capitoli", @@ -440,6 +453,9 @@ "LabelTagsAccessibleToUser": "Tags permessi agli Utenti", "LabelTagsNotAccessibleToUser": "Tags not Accessible to User", "LabelTasks": "Processi in esecuzione", + "LabelTheme": "Theme", + "LabelThemeDark": "Dark", + "LabelThemeLight": "Light", "LabelTimeBase": "Time Base", "LabelTimeListened": "Tempo di Ascolto", "LabelTimeListenedToday": "Tempo di Ascolto Oggi", diff --git a/client/strings/nl.json b/client/strings/nl.json index 3ae10458..1763830b 100644 --- a/client/strings/nl.json +++ b/client/strings/nl.json @@ -103,6 +103,7 @@ "HeaderEmailSettings": "Email Settings", "HeaderEpisodes": "Afleveringen", "HeaderEreaderDevices": "Ereader Devices", + "HeaderEreaderSettings": "Ereader Settings", "HeaderFiles": "Bestanden", "HeaderFindChapters": "Zoek hoofdstukken", "HeaderIgnoredFiles": "Genegeerde bestanden", @@ -154,6 +155,7 @@ "HeaderStatsRecentSessions": "Recente sessies", "HeaderStatsTop10Authors": "Top 10 auteurs", "HeaderStatsTop5Genres": "Top 5 genres", + "HeaderTableOfContents": "Table of Contents", "HeaderTools": "Tools", "HeaderUpdateAccount": "Account bijwerken", "HeaderUpdateAuthor": "Auteur bijwerken", @@ -221,6 +223,7 @@ "LabelDiscFromFilename": "Schijf uit bestandsnaam", "LabelDiscFromMetadata": "Schijf uit metadata", "LabelDownload": "Download", + "LabelDownloadNEpisodes": "Download {0} episodes", "LabelDuration": "Duur", "LabelDurationFound": "Gevonden duur:", "LabelEbook": "Ebook", @@ -249,6 +252,7 @@ "LabelFinished": "Voltooid", "LabelFolder": "Map", "LabelFolders": "Mappen", + "LabelFontScale": "Font scale", "LabelFormat": "Format", "LabelGenre": "Genre", "LabelGenres": "Genres", @@ -280,12 +284,16 @@ "LabelLastSeen": "Laatst gezien", "LabelLastTime": "Laatste keer", "LabelLastUpdate": "Laatste update", + "LabelLayout": "Layout", + "LabelLayoutSinglePage": "Single page", + "LabelLayoutSplitPage": "Split page", "LabelLess": "Minder", "LabelLibrariesAccessibleToUser": "Voor gebruiker toegankelijke bibliotheken", "LabelLibrary": "Bibliotheek", "LabelLibraryItem": "Library Item", "LabelLibraryName": "Library Name", "LabelLimit": "Limiet", + "LabelLineSpacing": "Line spacing", "LabelListenAgain": "Luister opnieuw", "LabelLogLevelDebug": "Debug", "LabelLogLevelInfo": "Info", @@ -310,6 +318,7 @@ "LabelNewPassword": "Nieuw wachtwoord", "LabelNextBackupDate": "Volgende back-up datum", "LabelNextScheduledRun": "Volgende geplande run", + "LabelNoEpisodesSelected": "No episodes selected", "LabelNotes": "Notities", "LabelNotFinished": "Niet Voltooid", "LabelNotificationAppriseURL": "Apprise URL(s)", @@ -369,6 +378,8 @@ "LabelSearchTitle": "Zoek titel", "LabelSearchTitleOrASIN": "Zoek titel of ASIN", "LabelSeason": "Seizoen", + "LabelSelectAllEpisodes": "Select all episodes", + "LabelSelectEpisodesShowing": "Select {0} episodes showing", "LabelSendEbookToDevice": "Send Ebook to...", "LabelSequence": "Sequentie", "LabelSeries": "Serie", @@ -388,6 +399,8 @@ "LabelSettingsExperimentalFeaturesHelp": "Functies in ontwikkeling die je feedback en testing kunnen gebruiken. Klik om de Github-discussie te openen.", "LabelSettingsFindCovers": "Zoek covers", "LabelSettingsFindCoversHelp": "Als je audioboek geen ingesloten cover of cover in de map heeft, zal de scanner proberen een cover te vinden.
Opmerking: Dit zal de scan-duur verlengen", + "LabelSettingsHideSingleBookSeries": "Hide single book series", + "LabelSettingsHideSingleBookSeriesHelp": "Series that have a single book will be hidden from the series page and home page shelves.", "LabelSettingsHomePageBookshelfView": "Boekenplank-view voor homepagina", "LabelSettingsLibraryBookshelfView": "Boekenplank-view voor bibliotheek", "LabelSettingsOverdriveMediaMarkers": "Gebruik Overdrive media markers voor hoofdstukken", @@ -440,6 +453,9 @@ "LabelTagsAccessibleToUser": "Tags toegankelijk voor de gebruiker", "LabelTagsNotAccessibleToUser": "Tags niet toegankelijk voor de gebruiker", "LabelTasks": "Lopende taken", + "LabelTheme": "Theme", + "LabelThemeDark": "Dark", + "LabelThemeLight": "Light", "LabelTimeBase": "Tijdsbasis", "LabelTimeListened": "Tijd geluisterd", "LabelTimeListenedToday": "Tijd geluisterd vandaag", diff --git a/client/strings/pl.json b/client/strings/pl.json index 854c74e9..c83300ee 100644 --- a/client/strings/pl.json +++ b/client/strings/pl.json @@ -103,6 +103,7 @@ "HeaderEmailSettings": "Email Settings", "HeaderEpisodes": "Rozdziały", "HeaderEreaderDevices": "Ereader Devices", + "HeaderEreaderSettings": "Ereader Settings", "HeaderFiles": "Pliki", "HeaderFindChapters": "Wyszukaj rozdziały", "HeaderIgnoredFiles": "Zignoruj pliki", @@ -154,6 +155,7 @@ "HeaderStatsRecentSessions": "Ostatnie sesje", "HeaderStatsTop10Authors": "Top 10 Autorów", "HeaderStatsTop5Genres": "Top 5 Gatunków", + "HeaderTableOfContents": "Table of Contents", "HeaderTools": "Narzędzia", "HeaderUpdateAccount": "Zaktualizuj konto", "HeaderUpdateAuthor": "Zaktualizuj autorów", @@ -221,6 +223,7 @@ "LabelDiscFromFilename": "Oznaczenie dysku z nazwy pliku", "LabelDiscFromMetadata": "Oznaczenie dysku z metadanych", "LabelDownload": "Pobierz", + "LabelDownloadNEpisodes": "Download {0} episodes", "LabelDuration": "Czas trwania", "LabelDurationFound": "Znaleziona długość:", "LabelEbook": "Ebook", @@ -249,6 +252,7 @@ "LabelFinished": "Zakończone", "LabelFolder": "Folder", "LabelFolders": "Foldery", + "LabelFontScale": "Font scale", "LabelFormat": "Format", "LabelGenre": "Gatunek", "LabelGenres": "Gatunki", @@ -280,12 +284,16 @@ "LabelLastSeen": "Ostatnio widziany", "LabelLastTime": "Ostatni czas", "LabelLastUpdate": "Ostatnia aktualizacja", + "LabelLayout": "Layout", + "LabelLayoutSinglePage": "Single page", + "LabelLayoutSplitPage": "Split page", "LabelLess": "Mniej", "LabelLibrariesAccessibleToUser": "Biblioteki dostępne dla użytkownika", "LabelLibrary": "Biblioteka", "LabelLibraryItem": "Element biblioteki", "LabelLibraryName": "Nazwa biblioteki", "LabelLimit": "Limit", + "LabelLineSpacing": "Line spacing", "LabelListenAgain": "Słuchaj ponownie", "LabelLogLevelDebug": "Debug", "LabelLogLevelInfo": "Informacja", @@ -310,6 +318,7 @@ "LabelNewPassword": "Nowe hasło", "LabelNextBackupDate": "Next backup date", "LabelNextScheduledRun": "Next scheduled run", + "LabelNoEpisodesSelected": "No episodes selected", "LabelNotes": "Uwagi", "LabelNotFinished": "Nieukończone", "LabelNotificationAppriseURL": "URLe Apprise", @@ -369,6 +378,8 @@ "LabelSearchTitle": "Wyszukaj tytuł", "LabelSearchTitleOrASIN": "Szukaj tytuł lub ASIN", "LabelSeason": "Sezon", + "LabelSelectAllEpisodes": "Select all episodes", + "LabelSelectEpisodesShowing": "Select {0} episodes showing", "LabelSendEbookToDevice": "Send Ebook to...", "LabelSequence": "Kolejność", "LabelSeries": "Serie", @@ -388,6 +399,8 @@ "LabelSettingsExperimentalFeaturesHelp": "Funkcje w trakcie rozwoju, które mogą zyskanć na Twojej opinii i pomocy w testowaniu. Kliknij, aby otworzyć dyskusję na githubie.", "LabelSettingsFindCovers": "Szukanie okładek", "LabelSettingsFindCoversHelp": "Jeśli audiobook nie posiada zintegrowanej okładki albo w folderze nie zostanie znaleziony plik okładki, skaner podejmie próbę pobrania okładki z sieci.
Uwaga: może to wydłuzyć proces skanowania", + "LabelSettingsHideSingleBookSeries": "Hide single book series", + "LabelSettingsHideSingleBookSeriesHelp": "Series that have a single book will be hidden from the series page and home page shelves.", "LabelSettingsHomePageBookshelfView": "Widok półki z książkami na stronie głównej", "LabelSettingsLibraryBookshelfView": "Widok półki z książkami na stronie biblioteki", "LabelSettingsOverdriveMediaMarkers": "Użyj markerów Overdrive Media Markers dla rozdziałów", @@ -440,6 +453,9 @@ "LabelTagsAccessibleToUser": "Tagi dostępne dla użytkownika", "LabelTagsNotAccessibleToUser": "Tags not Accessible to User", "LabelTasks": "Tasks Running", + "LabelTheme": "Theme", + "LabelThemeDark": "Dark", + "LabelThemeLight": "Light", "LabelTimeBase": "Time Base", "LabelTimeListened": "Czas odtwarzania", "LabelTimeListenedToday": "Czas odtwarzania dzisiaj", diff --git a/client/strings/ru.json b/client/strings/ru.json index 33c46cd2..a852a42e 100644 --- a/client/strings/ru.json +++ b/client/strings/ru.json @@ -103,6 +103,7 @@ "HeaderEmailSettings": "Настройки Email", "HeaderEpisodes": "Эпизоды", "HeaderEreaderDevices": "Устройства E-книга", + "HeaderEreaderSettings": "Ereader Settings", "HeaderFiles": "Файлы", "HeaderFindChapters": "Найти главы", "HeaderIgnoredFiles": "Игнорируемые Файлы", @@ -154,6 +155,7 @@ "HeaderStatsRecentSessions": "Последние сеансы", "HeaderStatsTop10Authors": "Топ 10 авторов", "HeaderStatsTop5Genres": "Топ 5 жанров", + "HeaderTableOfContents": "Table of Contents", "HeaderTools": "Инструменты", "HeaderUpdateAccount": "Обновить учетную запись", "HeaderUpdateAuthor": "Обновить автора", @@ -221,6 +223,7 @@ "LabelDiscFromFilename": "Диск из Имени файла", "LabelDiscFromMetadata": "Диск из Метаданных", "LabelDownload": "Скачать", + "LabelDownloadNEpisodes": "Download {0} episodes", "LabelDuration": "Длина", "LabelDurationFound": "Найденная длина:", "LabelEbook": "E-книга", @@ -249,6 +252,7 @@ "LabelFinished": "Закончен", "LabelFolder": "Папка", "LabelFolders": "Папки", + "LabelFontScale": "Font scale", "LabelFormat": "Формат", "LabelGenre": "Жанр", "LabelGenres": "Жанры", @@ -280,12 +284,16 @@ "LabelLastSeen": "Последнее сканирование", "LabelLastTime": "Последний по времени", "LabelLastUpdate": "Последний обновленный", + "LabelLayout": "Layout", + "LabelLayoutSinglePage": "Single page", + "LabelLayoutSplitPage": "Split page", "LabelLess": "Менее", "LabelLibrariesAccessibleToUser": "Библиотеки доступные для пользователя", "LabelLibrary": "Библиотека", "LabelLibraryItem": "Элемент библиотеки", "LabelLibraryName": "Имя библиотеки", "LabelLimit": "Лимит", + "LabelLineSpacing": "Line spacing", "LabelListenAgain": "Послушать снова", "LabelLogLevelDebug": "Debug", "LabelLogLevelInfo": "Info", @@ -310,6 +318,7 @@ "LabelNewPassword": "Новый пароль", "LabelNextBackupDate": "Следующая дата бэкапирования", "LabelNextScheduledRun": "Следущий запланированный запуск", + "LabelNoEpisodesSelected": "No episodes selected", "LabelNotes": "Заметки", "LabelNotFinished": "Не завершено", "LabelNotificationAppriseURL": "URL(ы) для извещений", @@ -369,6 +378,8 @@ "LabelSearchTitle": "Поиск по названию", "LabelSearchTitleOrASIN": "Поиск по названию или ASIN", "LabelSeason": "Сезон", + "LabelSelectAllEpisodes": "Select all episodes", + "LabelSelectEpisodesShowing": "Select {0} episodes showing", "LabelSendEbookToDevice": "Отправить e-книгу в...", "LabelSequence": "Последовательность", "LabelSeries": "Серия", @@ -388,6 +399,8 @@ "LabelSettingsExperimentalFeaturesHelp": "Функционал в разработке на который Вы могли бы дать отзыв или помочь в тестировании. Нажмите для открытия обсуждения на github.", "LabelSettingsFindCovers": "Найти обложки", "LabelSettingsFindCoversHelp": "Если у Ваших аудиокниг нет встроенной обложки или файла обложки в папке книги, то сканер попробует найти обложку.
Примечание: Это увеличит время сканирования", + "LabelSettingsHideSingleBookSeries": "Hide single book series", + "LabelSettingsHideSingleBookSeriesHelp": "Series that have a single book will be hidden from the series page and home page shelves.", "LabelSettingsHomePageBookshelfView": "Вид книжной полки на Домашней странице", "LabelSettingsLibraryBookshelfView": "Вид книжной полки в Библиотеке", "LabelSettingsOverdriveMediaMarkers": "Overdrive Media Markers для глав", @@ -440,6 +453,9 @@ "LabelTagsAccessibleToUser": "Теги доступные для пользователя", "LabelTagsNotAccessibleToUser": "Теги не доступные для пользователя", "LabelTasks": "Запущенные задачи", + "LabelTheme": "Theme", + "LabelThemeDark": "Dark", + "LabelThemeLight": "Light", "LabelTimeBase": "Временная база", "LabelTimeListened": "Время прослушивания", "LabelTimeListenedToday": "Время прослушивания сегодня", diff --git a/client/strings/zh-cn.json b/client/strings/zh-cn.json index cf36ef9a..660c7de1 100644 --- a/client/strings/zh-cn.json +++ b/client/strings/zh-cn.json @@ -223,6 +223,7 @@ "LabelDiscFromFilename": "从文件名获取光盘", "LabelDiscFromMetadata": "从元数据获取光盘", "LabelDownload": "下载", + "LabelDownloadNEpisodes": "Download {0} episodes", "LabelDuration": "持续时间", "LabelDurationFound": "找到持续时间:", "LabelEbook": "电子书", @@ -317,6 +318,7 @@ "LabelNewPassword": "新密码", "LabelNextBackupDate": "下次备份日期", "LabelNextScheduledRun": "下次任务运行", + "LabelNoEpisodesSelected": "No episodes selected", "LabelNotes": "注释", "LabelNotFinished": "未听完", "LabelNotificationAppriseURL": "通知 URL(s)", @@ -376,6 +378,8 @@ "LabelSearchTitle": "搜索标题", "LabelSearchTitleOrASIN": "搜索标题或 ASIN", "LabelSeason": "季", + "LabelSelectAllEpisodes": "Select all episodes", + "LabelSelectEpisodesShowing": "Select {0} episodes showing", "LabelSendEbookToDevice": "发送电子书到...", "LabelSequence": "序列", "LabelSeries": "系列", @@ -395,6 +399,8 @@ "LabelSettingsExperimentalFeaturesHelp": "开发中的功能需要你的反馈并帮助测试. 点击打开 github 讨论.", "LabelSettingsFindCovers": "查找封面", "LabelSettingsFindCoversHelp": "如果你的有声读物在文件夹中没有嵌入封面或封面图像, 扫描将尝试查找封面.
注意: 这将延长扫描时间", + "LabelSettingsHideSingleBookSeries": "Hide single book series", + "LabelSettingsHideSingleBookSeriesHelp": "Series that have a single book will be hidden from the series page and home page shelves.", "LabelSettingsHomePageBookshelfView": "首页使用书架视图", "LabelSettingsLibraryBookshelfView": "媒体库使用书架视图", "LabelSettingsOverdriveMediaMarkers": "对章节使用 Overdrive 媒体标记",