From 7a2431734a56f0fbb4db99d7d940afa4a8485019 Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:50:57 +0100 Subject: [PATCH 01/81] New translations en.json (French) --- src/Ombi/wwwroot/translations/fr.json | 53 +++++++++++++++++++++------ 1 file changed, 42 insertions(+), 11 deletions(-) diff --git a/src/Ombi/wwwroot/translations/fr.json b/src/Ombi/wwwroot/translations/fr.json index c9f424ca5..8b3b2ae1b 100644 --- a/src/Ombi/wwwroot/translations/fr.json +++ b/src/Ombi/wwwroot/translations/fr.json @@ -22,6 +22,7 @@ "RequestDenied": "Demande refusée", "NotRequested": "Non demandé", "Requested": "Demandé", + "Search": "Search", "Request": "Demander", "Denied": "Refusé", "Approve": "Approuver", @@ -31,10 +32,12 @@ "Validation": "Veuillez vérifier les valeurs entrées" }, "Cancel": "Annuler", - "Submit": "Envoyer" + "Submit": "Envoyer", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { - "EmailAddressPlaceholder": "Adresse Email", + "EmailAddressPlaceholder": "Adresse e-mail", "ResetPasswordButton": "Réinitialiser le mot de passe" }, "LandingPage": { @@ -61,9 +64,9 @@ "UpdateAvailableTooltip": "Mise à jour disponible !", "Settings": "Paramètres", "Welcome": "Bienvenue {{username}}", - "UpdateDetails": "Détails de la mise à jour", + "UpdateDetails": "Mettre à jour les informations", "Logout": "Déconnexion", - "OpenMobileApp": "Ouvrir l'application mobile", + "OpenMobileApp": "Ouvrir l'application", "RecentlyAdded": "Ajouts récents", "ChangeTheme": "Changer de thème", "Calendar": "Calendrier", @@ -86,12 +89,14 @@ "MoviesTab": "Films", "TvTab": "Séries", "MusicTab": "Musique", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Suggestions", "NoResults": "Désolé, nous n'avons trouvé aucun résultat !", "DigitalDate": "Sortie numérique: {{date}}", "TheatricalRelease": "Sortie en salle: {{date}}", "ViewOnPlex": "Regarder sur Plex", "ViewOnEmby": "Regarder sur Emby", + "ViewOnJellyfin": "Play On Jellyfin", "RequestAdded": "La demande pour {{title}} a été ajoutée avec succès", "Similar": "Similaires", "Refine": "Affiner", @@ -146,6 +151,7 @@ "Remove": "Supprimer", "Deny": "Refuser", "DenyReason": "Raison de refus", + "DeniedReason": "Denied Reason", "Season": "Saison", "GridTitle": "Titre", "AirDate": "Date de diffusion", @@ -179,7 +185,9 @@ "RequestPanel": { "Delete": "Supprimer la demande", "Approve": "Autoriser la demande", - "ChangeAvailability": "Marquer comme Disponible" + "ChangeAvailability": "Marquer comme Disponible", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { @@ -214,7 +222,9 @@ "MarkedAsResolved": "Ce problème a maintenant été marqué comme résolu !", "MarkedAsInProgress": "Ce problème a maintenant été marqué comme en cours de traitement !", "Delete": "Supprimer rapport d'erreur", - "DeletedIssue": "Votre rapport d'erreur a été supprimé" + "DeletedIssue": "Votre rapport d'erreur a été supprimé", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Effacer les filtres", @@ -247,8 +257,12 @@ "ViewCollection": "Afficher la Collection", "NotEnoughInfo": "Malheureusement, il n'y a pas encore assez d'informations à propos de ce média !", "AdvancedOptions": "Options Avancées", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Sélectionner un Profil de Qualité", "RootFolderSelect": "Sélectionner un Dossier Racine", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Statut", "Availability": "Disponibilité", "RequestStatus": "Statut de la Demande", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "Cette action demandera toutes les saisons de cette série", "FirstSeasonTooltip": "Cette action ne demandera que la Première Saison de cette série", - "LatestSeasonTooltip": "Cette action ne demandera que la Dernière Saison de cette série" - } + "LatestSeasonTooltip": "Cette action ne demandera que la Dernière Saison de cette série", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Populaire", "TrendingTab": "Tendances", "UpcomingTab": "Prochainement", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Films", "Combined": "Tous", "Tv": "TV", @@ -291,11 +314,19 @@ "FirstAired": "Première Diffusion", "Writer": "Scénariste", "ExecProducer": "Producteur Exécutif" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Bienvenue {{username}}!", "OmbiLanguage": "Langue", - "DarkMode": "Mode Sombre" + "DarkMode": "Mode Sombre", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } -} \ No newline at end of file +} From 387001706eeee07c2315fed707c9c20f7f9fd3bd Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:50:58 +0100 Subject: [PATCH 02/81] New translations en.json (Spanish) --- src/Ombi/wwwroot/translations/es.json | 49 ++++++++++++++++++++++----- 1 file changed, 40 insertions(+), 9 deletions(-) diff --git a/src/Ombi/wwwroot/translations/es.json b/src/Ombi/wwwroot/translations/es.json index 9a156c219..052fa95be 100644 --- a/src/Ombi/wwwroot/translations/es.json +++ b/src/Ombi/wwwroot/translations/es.json @@ -22,6 +22,7 @@ "RequestDenied": "Solicitud denegada", "NotRequested": "No solicitado", "Requested": "Solicitado", + "Search": "Search", "Request": "Solicitar", "Denied": "Denegado", "Approve": "Aprobar", @@ -31,7 +32,9 @@ "Validation": "Por favor, comprueba los datos introducidos" }, "Cancel": "Cancelar", - "Submit": "Enviar" + "Submit": "Enviar", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { "EmailAddressPlaceholder": "Correo electrónico", @@ -86,12 +89,14 @@ "MoviesTab": "Películas", "TvTab": "Series", "MusicTab": "Música", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Sugerencias", "NoResults": "¡Lo sentimos, no encontramos ningún resultado!", "DigitalDate": "Versión digital: {{date}}", "TheatricalRelease": "En cines: {{date}}", "ViewOnPlex": "Ver en Plex", "ViewOnEmby": "Ver en Emby", + "ViewOnJellyfin": "Play On Jellyfin", "RequestAdded": "La solicitud de {{title}} se ha añadido correctamente", "Similar": "Similar", "Refine": "Filtros", @@ -142,10 +147,11 @@ "ChangeRootFolder": "Carpeta raíz", "ChangeQualityProfile": "Perfil de calidad", "MarkUnavailable": "Marcar como no disponible", - "MarkAvailable": "Marcar como disponible", + "MarkAvailable": "Marcar Disponible", "Remove": "Eliminar", "Deny": "Denegar", "DenyReason": "Razón Denegada", + "DeniedReason": "Denied Reason", "Season": "Temporada", "GridTitle": "Título", "AirDate": "Fecha de estreno", @@ -179,7 +185,9 @@ "RequestPanel": { "Delete": "Delete Request", "Approve": "Approve Request", - "ChangeAvailability": "Mark Available" + "ChangeAvailability": "Mark Available", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { @@ -214,7 +222,9 @@ "MarkedAsResolved": "¡Este problema ha sido marcado como resuelto!", "MarkedAsInProgress": "¡Este problema se ha marcado como en progreso!", "Delete": "Borrar problema", - "DeletedIssue": "El problema ha sido borrado" + "DeletedIssue": "El problema ha sido borrado", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Reiniciar filtro", @@ -247,8 +257,12 @@ "ViewCollection": "Ver Colección", "NotEnoughInfo": "Desafortunadamente todavía no hay suficiente información sobre este programa!", "AdvancedOptions": "Opciones Avanzadas", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Seleccione un Perfil de Calidad", "RootFolderSelect": "Seleccione una Carpeta Raíz", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Estado", "Availability": "Disponibilidad", "RequestStatus": "Estado de solicitud", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "Esto solicitará cada temporada para este programa", "FirstSeasonTooltip": "Esto solo solicitará la primera temporada para este programa", - "LatestSeasonTooltip": "Esto solo solicitará la última temporada para este programa" - } + "LatestSeasonTooltip": "Esto solo solicitará la última temporada para este programa", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Popular", "TrendingTab": "Tendencias", "UpcomingTab": "Próximamente", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Películas", "Combined": "Combinado", "Tv": "TV", @@ -291,11 +314,19 @@ "FirstAired": "Emitido por primera vez", "Writer": "Guionistas", "ExecProducer": "Productor ejecutivo" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Bienvenido {{username}}!", "OmbiLanguage": "Idioma", - "DarkMode": "Modo Oscuro" + "DarkMode": "Modo Oscuro", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } -} \ No newline at end of file +} From 66885da1f349e99dc505e3c9552fb4e360627340 Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:50:59 +0100 Subject: [PATCH 03/81] New translations en.json (Bulgarian) --- src/Ombi/wwwroot/translations/bg.json | 54 +++++++++++++-------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/src/Ombi/wwwroot/translations/bg.json b/src/Ombi/wwwroot/translations/bg.json index d315206f3..81e267c83 100644 --- a/src/Ombi/wwwroot/translations/bg.json +++ b/src/Ombi/wwwroot/translations/bg.json @@ -22,6 +22,7 @@ "RequestDenied": "Заявката е отказана", "NotRequested": "Не е заявено", "Requested": "Заявено", + "Search": "Търсене", "Request": "Заявка", "Denied": "Отказано", "Approve": "Одобряване", @@ -32,9 +33,8 @@ }, "Cancel": "Отказ", "Submit": "Потвърждаване", - "Search": "Търсене", - "movie": "Филм", - "tvShow": "Тв предаване" + "tvShow": "Тв предаване", + "movie": "Филм" }, "PasswordReset": { "EmailAddressPlaceholder": "Електронна поща", @@ -89,12 +89,14 @@ "MoviesTab": "Филми", "TvTab": "Тв предавания", "MusicTab": "Музика", + "AdvancedSearch": "Можете да попълните някое от долупосочените, за да откриете нова медия. Всички резултати са сортирани по популярност", "Suggestions": "Предложения", "NoResults": "Съжаляваме, не намерихме никакви резултати!", "DigitalDate": "Дигитално издание: {{date}}", "TheatricalRelease": "Кино премиера: {{date}}", "ViewOnPlex": "Преглед в Plex", "ViewOnEmby": "Преглед в Emby", + "ViewOnJellyfin": "Преглед в Jellyfin", "RequestAdded": "Заявката за {{title}} е успешно добавена", "Similar": "Подобни", "Refine": "Уточнете", @@ -121,9 +123,7 @@ "SubmitRequest": "Подаване на заявка", "Season": "Сезон {{seasonNumber}}", "SelectAllInSeason": "Избиране на всичко в сезона {{seasonNumber}}" - }, - "AdvancedSearch": "Можете да попълните някое от долупосочените, за да откриете нова медия. Всички резултати са сортирани по популярност", - "ViewOnJellyfin": "Преглед в Jellyfin" + } }, "Requests": { "Title": "Заявки", @@ -151,6 +151,7 @@ "Remove": "Премахване", "Deny": "Отказване", "DenyReason": "Причина за отхвърляне", + "DeniedReason": "Причина за отхвърляне", "Season": "Сезон", "GridTitle": "Заглавие", "AirDate": "Дата на излъчване", @@ -185,10 +186,9 @@ "Delete": "Изтриване на заявка", "Approve": "Одобряване на заявка", "ChangeAvailability": "Маркиране като налично", - "Approved": "Избраните елементи са одобрени успешно", - "Deleted": "Избраните елементи са изтрити успешно" - }, - "DeniedReason": "Причина за отхвърляне" + "Deleted": "Избраните елементи са изтрити успешно", + "Approved": "Избраните елементи са одобрени успешно" + } }, "Issues": { "Title": "Проблеми", @@ -257,8 +257,12 @@ "ViewCollection": "Преглед на колекцията", "NotEnoughInfo": "За съжаление все още няма достатъчно информация за това предаване!", "AdvancedOptions": "Разширени настройки", + "AutoApproveOptions": "Можете да конфигурирате заявката си тук. След като бъде създадена, тя ще бъде изпратена до вашето записващо приложение (DVR) и ще бъде автоматично одобрена! Моля, обърнете внимание, че тази стъпка не е задължителна и можете да натиснете бутона Заявка за да я пропуснете!", + "AutoApproveOptionsTv": "Можете да конфигурирате заявката си тук. След като бъде създадена, тя ще бъде изпратена до вашето записващо приложение (DVR) и ще бъде автоматично одобрена! Ако заявката вече е обработена от Sonarr, програмата няма да промени основната папка или профила на качеството ако сте ги задали. Моля, обърнете внимание, че тази стъпка не е задължителна и можете да натиснете бутона Заявка за да я пропуснете!", + "AutoApproveOptionsTvShort": "Можете да конфигурирате заявката си тук. След като бъде създадена, тя ще бъде изпратена до вашето записващо приложение (DVR)! Ако заявката вече е обработена от Sonarr, програмата няма да промени основната папка или профила на качеството ако сте ги задали. Моля, обърнете внимание, че тази стъпка не е задължителна и можете да натиснете бутона Заявка за да я пропуснете!", "QualityProfilesSelect": "Изберете профил на качеството", "RootFolderSelect": "Изберете основна папка", + "LanguageProfileSelect": "Изберете езиков профил", "Status": "Състояние", "Availability": "Наличност", "RequestStatus": "Състояние на заявката", @@ -283,21 +287,19 @@ "LatestSeasonTooltip": "Това ще заяви само последния сезон на това предаване", "NoEpisodes": "За съжаление все още няма данни за епизоди на това предаване!" }, - "AutoApproveOptions": "Можете да конфигурирате заявката си тук. След като бъде създадена, тя ще бъде изпратена до вашето записващо приложение (DVR) и ще бъде автоматично одобрена! Моля, обърнете внимание, че тази стъпка не е задължителна и можете да натиснете бутона Заявка за да я пропуснете!", - "AutoApproveOptionsTv": "Можете да конфигурирате заявката си тук. След като бъде създадена, тя ще бъде изпратена до вашето записващо приложение (DVR) и ще бъде автоматично одобрена! Ако заявката вече е обработена от Sonarr, програмата няма да промени основната папка или профила на качеството ако сте ги задали. Моля, обърнете внимание, че тази стъпка не е задължителна и можете да натиснете бутона Заявка за да я пропуснете!", - "AutoApproveOptionsTvShort": "Можете да конфигурирате заявката си тук. След като бъде създадена, тя ще бъде изпратена до вашето записващо приложение (DVR)! Ако заявката вече е обработена от Sonarr, програмата няма да промени основната папка или профила на качеството ако сте ги задали. Моля, обърнете внимание, че тази стъпка не е задължителна и можете да натиснете бутона Заявка за да я пропуснете!", - "LanguageProfileSelect": "Изберете езиков профил", - "PleaseSelectUser": "Моля, изберете потребител", - "RadarrConfiguration": "Конфигурация на Radarr", - "ReProcessRequest": "Повтаряне на заявка", - "RequestOnBehalf": "Заявете от името на", "SonarrConfiguration": "Конфигурация на Sonarr", - "StreamingOn": "Поточното изпълнение е включено" + "RadarrConfiguration": "Конфигурация на Radarr", + "RequestOnBehalf": "Заявете от името на", + "PleaseSelectUser": "Моля, изберете потребител", + "StreamingOn": "Поточното изпълнение е включено", + "ReProcessRequest": "Повтаряне на заявка" }, "Discovery": { "PopularTab": "Популярни", "TrendingTab": "Актуални", "UpcomingTab": "Предстоящи", + "SeasonalTab": "Сезонни", + "RecentlyRequestedTab": "Наскоро заявени", "Movies": "Филми", "Combined": "Комбинирано", "Tv": "Телевизия", @@ -313,20 +315,18 @@ "Writer": "Писател", "ExecProducer": "Изпълнителен продуцент" }, - "NoSearch": "Не са намерени съвпадения!", - "RecentlyRequestedTab": "Наскоро заявени", - "SeasonalTab": "Сезонни" + "NoSearch": "Не са намерени съвпадения!" }, "UserPreferences": { "Welcome": "Добре дошли, {{username}}!", "OmbiLanguage": "Език", "DarkMode": "Тъмен режим", - "LanguageDescription": "Това е езикът, на който искате да се показва интерфейсът на Ombi.", - "LegacyApp": "Стартирайте старото приложение", - "MobileQRCode": "Мобилен QR код", - "NoQrCode": "Моля, свържете се с вашия администратор, за да активирате QR кодовете", + "Updated": "Обновяването е успешно", "StreamingCountry": "Страна на поточно предаване", "StreamingCountryDescription": "Това е кодът на държавата, за който ще показваме поточна информация. Ако сте в САЩ, моля изберете САЩ и ще имате поточна информация, свързана със САЩ.", - "Updated": "Обновяването е успешно" + "LanguageDescription": "Това е езикът, на който искате да се показва интерфейсът на Ombi.", + "MobileQRCode": "Мобилен QR код", + "LegacyApp": "Стартирайте старото приложение", + "NoQrCode": "Моля, свържете се с вашия администратор, за да активирате QR кодовете" } } From 37337b1968a208efca5ab53754b1924cbd587bd2 Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:00 +0100 Subject: [PATCH 04/81] New translations en.json (Danish) --- src/Ombi/wwwroot/translations/da.json | 47 ++++++++++++++++++++++----- 1 file changed, 39 insertions(+), 8 deletions(-) diff --git a/src/Ombi/wwwroot/translations/da.json b/src/Ombi/wwwroot/translations/da.json index cf9a6af9d..3238c31ff 100644 --- a/src/Ombi/wwwroot/translations/da.json +++ b/src/Ombi/wwwroot/translations/da.json @@ -22,6 +22,7 @@ "RequestDenied": "Anmodning afvist", "NotRequested": "Ikke anmodet", "Requested": "Anmodet", + "Search": "Search", "Request": "Anmod", "Denied": "Afvist", "Approve": "Godkendt", @@ -31,7 +32,9 @@ "Validation": "Tjek venligst dine indtastede værdier" }, "Cancel": "Cancel", - "Submit": "Submit" + "Submit": "Submit", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { "EmailAddressPlaceholder": "E-mail-adresse", @@ -86,12 +89,14 @@ "MoviesTab": "Film", "TvTab": "Tv-serier", "MusicTab": "Musik", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Forslag", "NoResults": "Beklager, vi fandt ingen resultater!", "DigitalDate": "Digital udgivelse: {{date}}", "TheatricalRelease": "Biografudgivelse: {{date}}", "ViewOnPlex": "Se på Plex", "ViewOnEmby": "Se på Emby", + "ViewOnJellyfin": "Play On Jellyfin", "RequestAdded": "{{title}} er anmodet med succes", "Similar": "Lignende", "Refine": "Refine", @@ -146,6 +151,7 @@ "Remove": "Fjern", "Deny": "Afvis", "DenyReason": "Deny Reason", + "DeniedReason": "Denied Reason", "Season": "Sæson", "GridTitle": "Titel", "AirDate": "Sendt", @@ -179,7 +185,9 @@ "RequestPanel": { "Delete": "Delete Request", "Approve": "Approve Request", - "ChangeAvailability": "Mark Available" + "ChangeAvailability": "Mark Available", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { @@ -214,7 +222,9 @@ "MarkedAsResolved": "This issue has now been marked as resolved!", "MarkedAsInProgress": "This issue has now been marked as in progress!", "Delete": "Delete issue", - "DeletedIssue": "Issue has been deleted" + "DeletedIssue": "Issue has been deleted", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Nulstil filter", @@ -247,8 +257,12 @@ "ViewCollection": "View Collection", "NotEnoughInfo": "Unfortunately there is not enough information about this show yet!", "AdvancedOptions": "Advanced Options", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Status", "Availability": "Tilgængelighed", "RequestStatus": "Request Status", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "This will request every season for this show", "FirstSeasonTooltip": "This will only request the First Season for this show", - "LatestSeasonTooltip": "This will only request the Latest Season for this show" - } + "LatestSeasonTooltip": "This will only request the Latest Season for this show", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Populære", "TrendingTab": "Aktuelle", "UpcomingTab": "Upcoming", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Film", "Combined": "Combined", "Tv": "TV", @@ -291,11 +314,19 @@ "FirstAired": "First Aired", "Writer": "Writer", "ExecProducer": "Exec Producer" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Velkommen til {{username}}!", "OmbiLanguage": "Language", - "DarkMode": "Dark Mode" + "DarkMode": "Dark Mode", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } -} \ No newline at end of file +} From b46497e5dc01d65eeee8834fe8613a80bcbbbffc Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:01 +0100 Subject: [PATCH 05/81] New translations en.json (German) --- src/Ombi/wwwroot/translations/de.json | 55 +++++++++++++++++++++------ 1 file changed, 43 insertions(+), 12 deletions(-) diff --git a/src/Ombi/wwwroot/translations/de.json b/src/Ombi/wwwroot/translations/de.json index 245d7039d..f74bd1bff 100644 --- a/src/Ombi/wwwroot/translations/de.json +++ b/src/Ombi/wwwroot/translations/de.json @@ -20,8 +20,9 @@ "ProcessingRequest": "Anfrage wird bearbeitet", "PendingApproval": "Genehmigung ausstehend", "RequestDenied": "Anfrage abgelehnt", - "NotRequested": "Nicht angefragt", + "NotRequested": "Nicht angefordert", "Requested": "Angefordert", + "Search": "Search", "Request": "Anfrage", "Denied": "Abgelehnt", "Approve": "Genehmigen", @@ -31,20 +32,22 @@ "Validation": "Bitte überprüfen Sie die eingegebenen Werte" }, "Cancel": "Cancel", - "Submit": "Submit" + "Submit": "Submit", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { "EmailAddressPlaceholder": "E-Mail-Adresse", "ResetPasswordButton": "Passwort zurücksetzen" }, "LandingPage": { - "OnlineHeading": "Gerade Online", + "OnlineHeading": "Gerade online", "OnlineParagraph": "Der Mediaserver ist gerade online", - "PartiallyOnlineHeading": "Teilweise Online", + "PartiallyOnlineHeading": "Teilweise online", "PartiallyOnlineParagraph": "Der Mediaserver ist teilweise online.", "MultipleServersUnavailable": "Es sind {{serversUnavailable}} von {{totalServers}} Servern offline.", "SingleServerUnavailable": "Es sind {{serversUnavailable}} von {{totalServers}} Servern offline.", - "OfflineHeading": "Derzeit Offline", + "OfflineHeading": "Derzeit offline", "OfflineParagraph": "Der Mediaserver ist derzeit offline.", "CheckPageForUpdates": "Überprüfe diese Seite für kontinuierliche Website-Updates." }, @@ -86,12 +89,14 @@ "MoviesTab": "Filme", "TvTab": "Serien", "MusicTab": "Musik", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Vorschläge", "NoResults": "Es tut uns leid, wir haben keine Ergebnisse gefunden!", "DigitalDate": "Veröffentlichung der digitalen Version: {{date}}", "TheatricalRelease": "Kinostart: {{date}}", "ViewOnPlex": "In Plex anschauen", "ViewOnEmby": "In Emby anschauen", + "ViewOnJellyfin": "Play On Jellyfin", "RequestAdded": "Anfrage für {{title}} wurde erfolgreich hinzugefügt", "Similar": "Ähnliche", "Refine": "Auswahl verfeinern", @@ -146,6 +151,7 @@ "Remove": "Entfernen", "Deny": "Ablehnen", "DenyReason": "Ablehnungsgrund", + "DeniedReason": "Denied Reason", "Season": "Staffel", "GridTitle": "Titel", "AirDate": "Erstausstrahlung", @@ -179,7 +185,9 @@ "RequestPanel": { "Delete": "Delete Request", "Approve": "Approve Request", - "ChangeAvailability": "Mark Available" + "ChangeAvailability": "Mark Available", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { @@ -214,7 +222,9 @@ "MarkedAsResolved": "This issue has now been marked as resolved!", "MarkedAsInProgress": "This issue has now been marked as in progress!", "Delete": "Delete issue", - "DeletedIssue": "Issue has been deleted" + "DeletedIssue": "Issue has been deleted", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Filter zurücksetzen", @@ -247,8 +257,12 @@ "ViewCollection": "View Collection", "NotEnoughInfo": "Unfortunately there is not enough information about this show yet!", "AdvancedOptions": "Advanced Options", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Status", "Availability": "Verfügbarkeit", "RequestStatus": "Anfrage Status", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "Dies wird jede Saison für diese Show anfordern", "FirstSeasonTooltip": "Dies wird nur die erste Saison für diese Show anfordern", - "LatestSeasonTooltip": "Dies wird nur die letzte Saison für diese Show anfordern" - } + "LatestSeasonTooltip": "Dies wird nur die letzte Saison für diese Show anfordern", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Beliebt", "TrendingTab": "Angesagt", "UpcomingTab": "Demnächst", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Filme", "Combined": "Combined", "Tv": "TV", @@ -291,11 +314,19 @@ "FirstAired": "Erstausstrahlung", "Writer": "AutorIn", "ExecProducer": "Ausführender Produzent" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Willkommen {{username}}!", "OmbiLanguage": "Language", - "DarkMode": "Dark Mode" + "DarkMode": "Dark Mode", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } -} \ No newline at end of file +} From 7b9dcc875ff6963059f791197beb4afe847915ab Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:02 +0100 Subject: [PATCH 06/81] New translations en.json (Hungarian) --- src/Ombi/wwwroot/translations/hu.json | 47 ++++++++++++++++++++++----- 1 file changed, 39 insertions(+), 8 deletions(-) diff --git a/src/Ombi/wwwroot/translations/hu.json b/src/Ombi/wwwroot/translations/hu.json index 35574ffc9..17bed1941 100644 --- a/src/Ombi/wwwroot/translations/hu.json +++ b/src/Ombi/wwwroot/translations/hu.json @@ -22,6 +22,7 @@ "RequestDenied": "Kérés megtagadva", "NotRequested": "Nincs kérve", "Requested": "Kérve", + "Search": "Search", "Request": "Kérés", "Denied": "Megtagadva", "Approve": "Jóváhagyva", @@ -31,7 +32,9 @@ "Validation": "Kérjük, ellenőrizze a beírt értékeket" }, "Cancel": "Cancel", - "Submit": "Submit" + "Submit": "Submit", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { "EmailAddressPlaceholder": "E-mail cím", @@ -86,12 +89,14 @@ "MoviesTab": "Filmek", "TvTab": "Sorozatok", "MusicTab": "Zene", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Javaslatok", "NoResults": "Sajnáljuk, nem találtunk semmit!", "DigitalDate": "Digitális kiadás: {{date}}", "TheatricalRelease": "Mozis kiadás: {{date}}", "ViewOnPlex": "Megnézés Plexen", "ViewOnEmby": "Megnézés Emby-n", + "ViewOnJellyfin": "Play On Jellyfin", "RequestAdded": "Kérés sikeresen leadva erre: {{title}}", "Similar": "Hasonló", "Refine": "Finomítás", @@ -146,6 +151,7 @@ "Remove": "Törlés", "Deny": "Elutasítás", "DenyReason": "Deny Reason", + "DeniedReason": "Denied Reason", "Season": "Évad", "GridTitle": "Cím", "AirDate": "Bemutató", @@ -179,7 +185,9 @@ "RequestPanel": { "Delete": "Delete Request", "Approve": "Approve Request", - "ChangeAvailability": "Mark Available" + "ChangeAvailability": "Mark Available", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { @@ -214,7 +222,9 @@ "MarkedAsResolved": "This issue has now been marked as resolved!", "MarkedAsInProgress": "This issue has now been marked as in progress!", "Delete": "Delete issue", - "DeletedIssue": "Issue has been deleted" + "DeletedIssue": "Issue has been deleted", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Szűrő törlése", @@ -247,8 +257,12 @@ "ViewCollection": "View Collection", "NotEnoughInfo": "Unfortunately there is not enough information about this show yet!", "AdvancedOptions": "Advanced Options", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Állapot", "Availability": "Elérhetőség", "RequestStatus": "Request Status", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "This will request every season for this show", "FirstSeasonTooltip": "This will only request the First Season for this show", - "LatestSeasonTooltip": "This will only request the Latest Season for this show" - } + "LatestSeasonTooltip": "This will only request the Latest Season for this show", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Népszerű", "TrendingTab": "Felkapott", "UpcomingTab": "Upcoming", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Filmek", "Combined": "Combined", "Tv": "TV", @@ -291,11 +314,19 @@ "FirstAired": "First Aired", "Writer": "Writer", "ExecProducer": "Exec Producer" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Üdv {{username}}!", "OmbiLanguage": "Language", - "DarkMode": "Dark Mode" + "DarkMode": "Dark Mode", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } -} \ No newline at end of file +} From 8f6226074612d2f8dce213806b0e59b805e0236a Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:04 +0100 Subject: [PATCH 07/81] New translations en.json (Italian) --- src/Ombi/wwwroot/translations/it.json | 165 +++++++++++++++----------- 1 file changed, 98 insertions(+), 67 deletions(-) diff --git a/src/Ombi/wwwroot/translations/it.json b/src/Ombi/wwwroot/translations/it.json index c07c5a0d1..f61703f55 100644 --- a/src/Ombi/wwwroot/translations/it.json +++ b/src/Ombi/wwwroot/translations/it.json @@ -3,50 +3,53 @@ "SignInButton": "Accedi", "UsernamePlaceholder": "Nome utente", "PasswordPlaceholder": "Password", - "RememberMe": "Ricordati di me", + "RememberMe": "Ricordami", "SignInWith": "Accedi con {{appName}}", "SignInWithPlex": "Accedi con Plex", - "ForgottenPassword": "Hai dimenticato la password?", + "ForgottenPassword": "Password dimenticata?", "Errors": { - "IncorrectCredentials": "Username o password non corretta" + "IncorrectCredentials": "Nome utente o password non corretti" } }, "Common": { "ContinueButton": "Continua", "Available": "Disponibile", - "PartiallyAvailable": "Parzialmente Disponibile", + "PartiallyAvailable": "Parzialmente disponibile", "Monitored": "Monitorato", - "NotAvailable": "Non Disponibile", + "NotAvailable": "Non disponibile", "ProcessingRequest": "Richiesta in elaborazione", "PendingApproval": "In attesa di approvazione", "RequestDenied": "Richiesta negata", - "NotRequested": "Non richiesto", - "Requested": "Richiesto", + "NotRequested": "Non richiesta", + "Requested": "Richiesta", + "Search": "Search", "Request": "Richiesta", - "Denied": "Rifiutato", + "Denied": "Negata", "Approve": "Approva", - "PartlyAvailable": "Parzialmente Disponibile", + "PartlyAvailable": "Parzialmente disponibile", "ViewDetails": "Visualizza Dettagli", "Errors": { - "Validation": "Per favore, controlla i valori che hai inserito" + "Validation": "Per favore, controlla i valori inseriti" }, "Cancel": "Annulla", - "Submit": "Invia" + "Submit": "Invia", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { "EmailAddressPlaceholder": "Indirizzo e-mail", - "ResetPasswordButton": "Reimposta la password" + "ResetPasswordButton": "Reimposta password" }, "LandingPage": { - "OnlineHeading": "Attualmente Online", + "OnlineHeading": "Attualmente in linea", "OnlineParagraph": "Il media server è attualmente online", "PartiallyOnlineHeading": "Parzialmente in linea", "PartiallyOnlineParagraph": "Il media server è parzialmente in linea.", "MultipleServersUnavailable": "Ci sono {{serversUnavailable}} server offline su {{totalServers}}.", "SingleServerUnavailable": "C'è {{serversUnavailable}} server offline su {{totalServers}}.", "OfflineHeading": "Attualmente Offline", - "OfflineParagraph": "Il media server è attualmente offline.", - "CheckPageForUpdates": "Controlla questa pagina per ottenere aggiornamenti del sito." + "OfflineParagraph": "Il server dei media è attualmente offline.", + "CheckPageForUpdates": "Controlla questa pagina per aggiornamenti continui del sito." }, "NavigationBar": { "Discover": "Scopri", @@ -55,16 +58,16 @@ "UserManagement": "Gestione degli utenti", "Issues": "Problemi", "Vote": "Vota", - "Donate": "Fai una donazione!", + "Donate": "Dona!", "DonateLibraryMaintainer": "Dona al manutentore della libreria", "DonateTooltip": "Questo è come convinco mia moglie a farmi spendere il mio tempo libero nello sviluppo di Ombi ;)", "UpdateAvailableTooltip": "Aggiornamento disponibile!", "Settings": "Impostazioni", - "Welcome": "Benvenuto {{username}}", - "UpdateDetails": "Aggiorna i tuoi dati", + "Welcome": "Ti diamo il benvenuto {{username}}", + "UpdateDetails": "Aggiorna dettagli", "Logout": "Esci", - "OpenMobileApp": "Apri l'applicazione mobile", - "RecentlyAdded": "Aggiunto di recente", + "OpenMobileApp": "Apri l'app Mobile", + "RecentlyAdded": "Aggiunti di recente", "ChangeTheme": "Cambia Tema", "Calendar": "Calendario", "UserPreferences": "Preferenze", @@ -82,17 +85,19 @@ }, "Search": { "Title": "Cerca", - "Paragraph": "Vuoi vedere qualcosa che non è attualmente disponibile? Nessun problema, basta cercare qui sotto e richiederlo!", + "Paragraph": "Vuoi vedere qualcosa non attualmente disponibile? Nessun problema, cercalo sotto e richiedilo!", "MoviesTab": "Film", "TvTab": "Serie TV", "MusicTab": "Musica", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Suggerimenti", - "NoResults": "Ci dispiace, non abbiamo trovato alcun risultato!", - "DigitalDate": "Rilascio digitale {{date}}", - "TheatricalRelease": "Rilascio Teatrale: {{date}}", + "NoResults": "Spiacenti, non abbiamo trovato nulla!", + "DigitalDate": "Uscita in digitale: {{date}}", + "TheatricalRelease": "Uscita nei cinema: {{date}}", "ViewOnPlex": "Guarda su Plex", "ViewOnEmby": "Guarda su Emby", - "RequestAdded": "La richiesta per {{title}} è stata aggiunta correttamente", + "ViewOnJellyfin": "Play On Jellyfin", + "RequestAdded": "La richiesta per {{title}} è stata aggiunta con successo", "Similar": "Simili", "Refine": "Affina", "SearchBarPlaceholder": "Digita qui per cercare", @@ -105,24 +110,24 @@ "Trailer": "Trailer" }, "TvShows": { - "Popular": "Popolare", - "Trending": "Tendenze", - "MostWatched": "Più Visti", + "Popular": "Popolari", + "Trending": "Di tendenza", + "MostWatched": "Più viste", "MostAnticipated": "Più attese", "Results": "Risultati", - "AirDate": "Data di trasmissione:", + "AirDate": "Data trasmissione:", "AllSeasons": "Tutte le stagioni", - "FirstSeason": "Prima Stagione", - "LatestSeason": "Ultima Stagione", - "Select": "Seleziona ...", + "FirstSeason": "Prima stagione", + "LatestSeason": "Ultima stagione", + "Select": "Seleziona...", "SubmitRequest": "Invia richiesta", "Season": "Stagione {{seasonNumber}}", - "SelectAllInSeason": "Seleziona Tutto nella Stagione {{seasonNumber}}" + "SelectAllInSeason": "Seleziona tutto nella stagione {{seasonNumber}}" } }, "Requests": { "Title": "Richieste", - "Paragraph": "Qui sotto puoi vedere le tue e tutte le altre richieste con il loro stato di download e approvazione.", + "Paragraph": "Sotto puoi vedere le richieste tue e altrui, con il loro stato di download e di approvazione.", "MoviesTab": "Film", "ArtistName": "Artista", "AlbumName": "Nome Album", @@ -131,41 +136,42 @@ "RequestedBy": "Richiesta da", "Status": "Stato", "RequestStatus": "Stato della richiesta", - "Denied": " Rifiutato:", - "TheatricalRelease": "Rilascio Teatrale: {{date}}", - "ReleaseDate": "Rilasciato: {{date}}", - "TheatricalReleaseSort": "Rilascio Teatrale", - "DigitalRelease": "Rilascio digitale {{date}}", + "Denied": "Negata:", + "TheatricalRelease": "Uscita nei cinema: {{date}}", + "ReleaseDate": "Rilasciato il {{date}}", + "TheatricalReleaseSort": "Uscita nei cinema", + "DigitalRelease": "Uscita in digitale: {{date}}", "RequestDate": "Data della richiesta", - "QualityOverride": "Sovrascrivi qualità:", - "RootFolderOverride": "Sovrascrivi cartella principale:", - "ChangeRootFolder": "Modifica cartella principale", - "ChangeQualityProfile": "Modifica il profilo della qualità", - "MarkUnavailable": "Segna come Non disponibile", - "MarkAvailable": "Segna come Disponibile", - "Remove": "Elimina", + "QualityOverride": "Specifica qualità:", + "RootFolderOverride": "Specifica cartella radice:", + "ChangeRootFolder": "Cartella radice", + "ChangeQualityProfile": "Profilo qualità", + "MarkUnavailable": "Rendi non disponibile", + "MarkAvailable": "Rendi disponibile", + "Remove": "Rimuovi", "Deny": "Nega", "DenyReason": "Nega Motivo", + "DeniedReason": "Denied Reason", "Season": "Stagione", "GridTitle": "Titolo", "AirDate": "Data di trasmissione", "GridStatus": "Stato", - "ReportIssue": "Segnala Problema", + "ReportIssue": "Segnala problema", "Filter": "Filtra", "Sort": "Ordina", "SeasonNumberHeading": "Stagione: {seasonNumber}", "SortTitleAsc": "Titolo ▲", "SortTitleDesc": "Titolo ▼", - "SortRequestDateAsc": "Data Richiesta", - "SortRequestDateDesc": "Data Richiesta", + "SortRequestDateAsc": "Data richiesta ▲", + "SortRequestDateDesc": "Data richiesta ▼", "SortStatusAsc": "Stato ▲", - "SortStatusDesc": "Status ▼", + "SortStatusDesc": "Stato ▼", "Remaining": { "Quota": "{{remaining}}/{{total}} richieste rimanenti", "NextDays": "Un'altra richiesta verrà aggiunta tra {{time}} giorni", "NextHours": "Un'altra richiesta verrà aggiunta tra {{time}} ore", - "NextMinutes": "Un'altra richiesta verrà aggiunta tra {{time}} minuti", - "NextMinute": "Un'altra richiesta verrà aggiunta tra {{time}} minuti" + "NextMinutes": "Un'altra richiesta sarà aggiunta in {{time}} minuti", + "NextMinute": "Un'altra richiesta sarà aggiunta in {{time}} minuto" }, "AllRequests": "Tutte le Richieste", "PendingRequests": "Richieste in Attesa", @@ -179,27 +185,29 @@ "RequestPanel": { "Delete": "Elimina Richiesta", "Approve": "Approva Richiesta", - "ChangeAvailability": "Segna come Disponibile" + "ChangeAvailability": "Segna come Disponibile", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { "Title": "Problemi", - "PendingTitle": "Problemi in sospeso", - "InProgressTitle": "Problemi in risoluzione", - "ResolvedTitle": "Problemi risolti", + "PendingTitle": "Problemi In Attesa", + "InProgressTitle": "Problemi In Corso", + "ResolvedTitle": "Problemi Risolti", "ColumnTitle": "Titolo", "Count": "Count", "Category": "Categoria", "Status": "Stato", "Details": "Dettagli", "Description": "Descrizione", - "NoComments": "Non ci sono commenti!", - "MarkInProgress": "Segna come in risoluzione", - "MarkResolved": "Segna come risolto", + "NoComments": "Nessun Commento!", + "MarkInProgress": "Senza In Corso", + "MarkResolved": "Segna Risolto", "SendMessageButton": "Invia", "Subject": "Oggetto", "Comments": "Commenti", - "WriteMessagePlaceholder": "Scrivi qui il tuo messaggio...", + "WriteMessagePlaceholder": "Scrivi il tuo messaggio qui...", "ReportedBy": "Segnalato da", "IssueDialog": { "Title": "Segnala un problema", @@ -214,7 +222,9 @@ "MarkedAsResolved": "Questo problema è stato ora segnato come risolto!", "MarkedAsInProgress": "Questo problema è stato ora segnato come in corso!", "Delete": "Elimina problema", - "DeletedIssue": "Il problema è stato eliminato" + "DeletedIssue": "Il problema è stato eliminato", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Rimuovi filtro", @@ -233,7 +243,7 @@ }, "Votes": { "CompletedVotesTab": "Votati", - "VotesTab": "Voti Necessari" + "VotesTab": "Voti richiesti" }, "MediaDetails": { "Denied": "Rifiutato", @@ -247,8 +257,12 @@ "ViewCollection": "Visualizza Raccolta", "NotEnoughInfo": "Sfortunatamente ancora non ci sono abbastanza informazioni su questo show!", "AdvancedOptions": "Opzioni Avanzate", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Seleziona Un Profilo di Qualità", "RootFolderSelect": "Seleziona Una Cartella di Root", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Stato", "Availability": "Disponibilità", "RequestStatus": "Stato Richiesta", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "Questo richiederà ogni stagione per questo show", "FirstSeasonTooltip": "Questo richiederà solo la Prima Stagione per questo show", - "LatestSeasonTooltip": "Questo richiederà solo l'Ultima Stagione per questo show" - } + "LatestSeasonTooltip": "Questo richiederà solo l'Ultima Stagione per questo show", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Popolare", "TrendingTab": "Tendenze", "UpcomingTab": "In arrivo", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Film", "Combined": "Combinato", "Tv": "TV", @@ -291,11 +314,19 @@ "FirstAired": "Prima Trasmissione", "Writer": "Scrittore", "ExecProducer": "Produttore Esecutivo" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Benvenuto {{username}}!", "OmbiLanguage": "Lingua", - "DarkMode": "Modalità Scura" + "DarkMode": "Modalità Scura", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } -} \ No newline at end of file +} From ca7e0b021354ea17960aaa54afc93eb878a4a4ce Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:05 +0100 Subject: [PATCH 08/81] New translations en.json (Dutch) --- src/Ombi/wwwroot/translations/nl.json | 47 ++++++++++++++++++++++----- 1 file changed, 39 insertions(+), 8 deletions(-) diff --git a/src/Ombi/wwwroot/translations/nl.json b/src/Ombi/wwwroot/translations/nl.json index fdc5f8eeb..e2c9833c4 100644 --- a/src/Ombi/wwwroot/translations/nl.json +++ b/src/Ombi/wwwroot/translations/nl.json @@ -22,6 +22,7 @@ "RequestDenied": "Verzoek geweigerd", "NotRequested": "Niet verzocht", "Requested": "Aangevraagd", + "Search": "Search", "Request": "Aanvragen", "Denied": "Afgewezen", "Approve": "Accepteer", @@ -31,7 +32,9 @@ "Validation": "Controleer de ingevulde waardes" }, "Cancel": "Cancel", - "Submit": "Submit" + "Submit": "Submit", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { "EmailAddressPlaceholder": "E-mail adres", @@ -86,12 +89,14 @@ "MoviesTab": "Films", "TvTab": "TV Series", "MusicTab": "Muziek", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Suggesties", "NoResults": "Sorry, er zijn geen resultaten gevonden!", "DigitalDate": "Digitale Uitgave: {{date}}", "TheatricalRelease": "Bioscoop Uitgave: {{date}}", "ViewOnPlex": "Bekijk op Plex", "ViewOnEmby": "Bekijk op Emby", + "ViewOnJellyfin": "Play On Jellyfin", "RequestAdded": "Aanvraag voor {{title}} is succesvol toegevoegd", "Similar": "Vergelijkbaar", "Refine": "Verfijn", @@ -146,6 +151,7 @@ "Remove": "Verwijderen", "Deny": "Weigeren", "DenyReason": "Reden van afwijzing", + "DeniedReason": "Denied Reason", "Season": "Seizoen", "GridTitle": "Titel", "AirDate": "Uitzenddatum", @@ -179,7 +185,9 @@ "RequestPanel": { "Delete": "Delete Request", "Approve": "Approve Request", - "ChangeAvailability": "Mark Available" + "ChangeAvailability": "Mark Available", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { @@ -214,7 +222,9 @@ "MarkedAsResolved": "This issue has now been marked as resolved!", "MarkedAsInProgress": "This issue has now been marked as in progress!", "Delete": "Delete issue", - "DeletedIssue": "Issue has been deleted" + "DeletedIssue": "Issue has been deleted", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Verwijder Filter", @@ -247,8 +257,12 @@ "ViewCollection": "View Collection", "NotEnoughInfo": "Unfortunately there is not enough information about this show yet!", "AdvancedOptions": "Advanced Options", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Status", "Availability": "Beschikbaarheid", "RequestStatus": "Aanvraagstatus", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "Dit verzoekt ieder seizoen van deze serie", "FirstSeasonTooltip": "Dit verzoekt alleen het eerste seizoen van deze serie", - "LatestSeasonTooltip": "Dit verzoekt alleen het laatste seizoen van deze show" - } + "LatestSeasonTooltip": "Dit verzoekt alleen het laatste seizoen van deze show", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Populair", "TrendingTab": "Populair", "UpcomingTab": "Aankomend", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Films", "Combined": "Combined", "Tv": "TV", @@ -291,11 +314,19 @@ "FirstAired": "Eerste uitzending", "Writer": "Schrijver", "ExecProducer": "Uitvoerende producent" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Welkom {{username}}!", "OmbiLanguage": "Language", - "DarkMode": "Dark Mode" + "DarkMode": "Dark Mode", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } -} \ No newline at end of file +} From 47c34df32b4fb944462922d402ea74fdb4d83f24 Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:06 +0100 Subject: [PATCH 09/81] New translations en.json (Norwegian) --- src/Ombi/wwwroot/translations/no.json | 47 ++++++++++++++++++++++----- 1 file changed, 39 insertions(+), 8 deletions(-) diff --git a/src/Ombi/wwwroot/translations/no.json b/src/Ombi/wwwroot/translations/no.json index 8421b63a9..7b84fbcde 100644 --- a/src/Ombi/wwwroot/translations/no.json +++ b/src/Ombi/wwwroot/translations/no.json @@ -22,6 +22,7 @@ "RequestDenied": "Forespørsel avslått", "NotRequested": "Ikke forespurt", "Requested": "Forespurt", + "Search": "Search", "Request": "Forespørsel", "Denied": "Avslått", "Approve": "Godkjenn", @@ -31,7 +32,9 @@ "Validation": "Kontroller de angitte verdiene" }, "Cancel": "Cancel", - "Submit": "Submit" + "Submit": "Submit", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { "EmailAddressPlaceholder": "E-postadresse", @@ -86,12 +89,14 @@ "MoviesTab": "Filmer", "TvTab": "TV serier", "MusicTab": "Musikk", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Forslag", "NoResults": "Beklager, vi fant ingen resultater!", "DigitalDate": "Digital utgivelse: {{date}}", "TheatricalRelease": "Kinopremiere: {{date}}", "ViewOnPlex": "Spill av på Plex", "ViewOnEmby": "Spill av på Emby", + "ViewOnJellyfin": "Play On Jellyfin", "RequestAdded": "Forespørsel om {{title}} er lagt til", "Similar": "Lignende", "Refine": "Spesifiser", @@ -146,6 +151,7 @@ "Remove": "Fjern", "Deny": "Avslå", "DenyReason": "Deny Reason", + "DeniedReason": "Denied Reason", "Season": "Sesong", "GridTitle": "Tittel", "AirDate": "Sendedato", @@ -179,7 +185,9 @@ "RequestPanel": { "Delete": "Delete Request", "Approve": "Approve Request", - "ChangeAvailability": "Mark Available" + "ChangeAvailability": "Mark Available", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { @@ -214,7 +222,9 @@ "MarkedAsResolved": "This issue has now been marked as resolved!", "MarkedAsInProgress": "This issue has now been marked as in progress!", "Delete": "Delete issue", - "DeletedIssue": "Issue has been deleted" + "DeletedIssue": "Issue has been deleted", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Tøm filter", @@ -247,8 +257,12 @@ "ViewCollection": "View Collection", "NotEnoughInfo": "Unfortunately there is not enough information about this show yet!", "AdvancedOptions": "Advanced Options", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Status", "Availability": "Tilgjengelighet", "RequestStatus": "Request Status", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "This will request every season for this show", "FirstSeasonTooltip": "This will only request the First Season for this show", - "LatestSeasonTooltip": "This will only request the Latest Season for this show" - } + "LatestSeasonTooltip": "This will only request the Latest Season for this show", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Populært", "TrendingTab": "På vei opp", "UpcomingTab": "Upcoming", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Filmer", "Combined": "Combined", "Tv": "TV", @@ -291,11 +314,19 @@ "FirstAired": "First Aired", "Writer": "Writer", "ExecProducer": "Exec Producer" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Velkommen {{username}}!", "OmbiLanguage": "Language", - "DarkMode": "Dark Mode" + "DarkMode": "Dark Mode", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } -} \ No newline at end of file +} From e95e9e65870baea74e104f81a81483af0711c94d Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:07 +0100 Subject: [PATCH 10/81] New translations en.json (Polish) --- src/Ombi/wwwroot/translations/pl.json | 51 +++++++++++++++++++++------ 1 file changed, 41 insertions(+), 10 deletions(-) diff --git a/src/Ombi/wwwroot/translations/pl.json b/src/Ombi/wwwroot/translations/pl.json index e3ee7d230..9668b9519 100644 --- a/src/Ombi/wwwroot/translations/pl.json +++ b/src/Ombi/wwwroot/translations/pl.json @@ -22,6 +22,7 @@ "RequestDenied": "Zgłoszenie odrzucone", "NotRequested": "Niezgłoszone", "Requested": "Zgłoszone", + "Search": "Search", "Request": "Zgłoszenie", "Denied": "Odrzucone", "Approve": "Zatwierdź", @@ -31,7 +32,9 @@ "Validation": "Proszę sprawdzić wprowadzone wartości" }, "Cancel": "Cancel", - "Submit": "Submit" + "Submit": "Submit", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { "EmailAddressPlaceholder": "Adres e-mail", @@ -86,12 +89,14 @@ "MoviesTab": "Filmy", "TvTab": "Seriale", "MusicTab": "Muzyka", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Sugestie", "NoResults": "Niestety nic nie znaleziono!", "DigitalDate": "Wydanie cyfrowe: {{date}}", "TheatricalRelease": "Premiera kinowa: {{date}}", "ViewOnPlex": "Obejrzyj w Plex", "ViewOnEmby": "Obejrzyj w Emby", + "ViewOnJellyfin": "Play On Jellyfin", "RequestAdded": "Zgłoszenie dla {{title}} zostało pomyślnie dodane", "Similar": "Podobne", "Refine": "Zawęź", @@ -146,6 +151,7 @@ "Remove": "Usuń", "Deny": "Odrzuć", "DenyReason": "Powód odrzucenia", + "DeniedReason": "Denied Reason", "Season": "Sezon", "GridTitle": "Tytuł", "AirDate": "Data emisji", @@ -179,7 +185,9 @@ "RequestPanel": { "Delete": "Delete Request", "Approve": "Approve Request", - "ChangeAvailability": "Mark Available" + "ChangeAvailability": "Mark Available", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { @@ -190,7 +198,7 @@ "ColumnTitle": "Tytuł", "Count": "Count", "Category": "Kategoria", - "Status": "Stan", + "Status": "Status", "Details": "Szczegóły", "Description": "Opis", "NoComments": "Brak komentarzy!", @@ -214,12 +222,14 @@ "MarkedAsResolved": "This issue has now been marked as resolved!", "MarkedAsInProgress": "This issue has now been marked as in progress!", "Delete": "Delete issue", - "DeletedIssue": "Issue has been deleted" + "DeletedIssue": "Issue has been deleted", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Wyczyść filtr", "FilterHeaderAvailability": "Dostępność", - "FilterHeaderRequestStatus": "Stan", + "FilterHeaderRequestStatus": "Status", "Approved": "Zatwierdzone", "PendingApproval": "Oczekujące na zatwierdzenie" }, @@ -247,8 +257,12 @@ "ViewCollection": "View Collection", "NotEnoughInfo": "Unfortunately there is not enough information about this show yet!", "AdvancedOptions": "Advanced Options", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Stan", "Availability": "Dostępność", "RequestStatus": "Status zgłoszenia", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "Zgłoszenie obejmie wszystkie sezony tego serialu", "FirstSeasonTooltip": "Zgłoszenie obejmie pierwszy sezon tego serialu", - "LatestSeasonTooltip": "Zgłoszenie obejmie najnowszy sezon tego serialu" - } + "LatestSeasonTooltip": "Zgłoszenie obejmie najnowszy sezon tego serialu", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Popularne", "TrendingTab": "Zyskujące popularność", "UpcomingTab": "Nadchodzące", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Filmy", "Combined": "Combined", "Tv": "TV", @@ -291,11 +314,19 @@ "FirstAired": "Pierwsza emisja", "Writer": "Scenarzysta", "ExecProducer": "Producent wykonawczy" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Witaj {{username}}!", "OmbiLanguage": "Language", - "DarkMode": "Dark Mode" + "DarkMode": "Dark Mode", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } -} \ No newline at end of file +} From 3f0246eac78f5e3cb3b6e4ac1ee43d1cb968b1de Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:08 +0100 Subject: [PATCH 11/81] New translations en.json (Portuguese) --- src/Ombi/wwwroot/translations/pt.json | 111 ++++++++++++++++---------- 1 file changed, 71 insertions(+), 40 deletions(-) diff --git a/src/Ombi/wwwroot/translations/pt.json b/src/Ombi/wwwroot/translations/pt.json index 8fe818bcc..ac38b8d2c 100644 --- a/src/Ombi/wwwroot/translations/pt.json +++ b/src/Ombi/wwwroot/translations/pt.json @@ -1,44 +1,47 @@ { "Login": { - "SignInButton": "Iniciar sessão", - "UsernamePlaceholder": "Nome de Usuário", - "PasswordPlaceholder": "Palavra-passe", - "RememberMe": "Recorde-me", - "SignInWith": "Entre com {{appName}}", - "SignInWithPlex": "Iniciar sessão com Plex", - "ForgottenPassword": "Esqueceu sua senha?", + "SignInButton": "Sign in", + "UsernamePlaceholder": "Username", + "PasswordPlaceholder": "Password", + "RememberMe": "Remember Me", + "SignInWith": "Sign in with {{appName}}", + "SignInWithPlex": "Sign in with Plex", + "ForgottenPassword": "Forgot your password?", "Errors": { - "IncorrectCredentials": "Usuário ou senha incorretos" + "IncorrectCredentials": "Incorrect username or password" } }, "Common": { - "ContinueButton": "Continuar", - "Available": "Disponível", - "PartiallyAvailable": "Parcialmente Disponível", + "ContinueButton": "Continue", + "Available": "Available", + "PartiallyAvailable": "Partially Available", "Monitored": "Monitored", - "NotAvailable": "Não disponível", - "ProcessingRequest": "Processando o pedido", - "PendingApproval": "Aprovação Pendente", - "RequestDenied": "Pedido Negado", - "NotRequested": "Não Solicitado", - "Requested": "Pedido", - "Request": "Solicitar", - "Denied": "Recusado", - "Approve": "Aprovar", - "PartlyAvailable": "Parcialmente Disponível", - "ViewDetails": "Ver detalhes", + "NotAvailable": "Not Available", + "ProcessingRequest": "Processing Request", + "PendingApproval": "Pending Approval", + "RequestDenied": "Request Denied", + "NotRequested": "Not Requested", + "Requested": "Requested", + "Search": "Search", + "Request": "Request", + "Denied": "Denied", + "Approve": "Approve", + "PartlyAvailable": "Partly Available", + "ViewDetails": "View Details", "Errors": { - "Validation": "Por favor, verifique os valores inseridos" + "Validation": "Please check your entered values" }, - "Cancel": "Cancelar", - "Submit": "Submeter" + "Cancel": "Cancel", + "Submit": "Submit", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { "EmailAddressPlaceholder": "Email Address", - "ResetPasswordButton": "Nova senha" + "ResetPasswordButton": "Reset Password" }, "LandingPage": { - "OnlineHeading": "Online no momento", + "OnlineHeading": "Currently Online", "OnlineParagraph": "The media server is currently online", "PartiallyOnlineHeading": "Partially Online", "PartiallyOnlineParagraph": "The media server is partially online.", @@ -52,7 +55,7 @@ "Discover": "Discover", "Search": "Search", "Requests": "Requests", - "UserManagement": "User Management", + "UserManagement": "Users", "Issues": "Issues", "Vote": "Vote", "Donate": "Donate!", @@ -68,7 +71,7 @@ "ChangeTheme": "Change Theme", "Calendar": "Calendar", "UserPreferences": "Preferences", - "FeatureSuggestion": "Feature Suggestion", + "FeatureSuggestion": "Features", "FeatureSuggestionTooltip": "Have a great new idea? Suggest it here!", "Filter": { "Movies": "Movies", @@ -86,12 +89,14 @@ "MoviesTab": "Movies", "TvTab": "TV Shows", "MusicTab": "Music", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Suggestions", "NoResults": "Sorry, we didn't find any results!", "DigitalDate": "Digital Release: {{date}}", "TheatricalRelease": "Theatrical Release: {{date}}", - "ViewOnPlex": "View On Plex", - "ViewOnEmby": "View On Emby", + "ViewOnPlex": "Play On Plex", + "ViewOnEmby": "Play On Emby", + "ViewOnJellyfin": "Play On Jellyfin", "RequestAdded": "Request for {{title}} has been added successfully", "Similar": "Similar", "Refine": "Refine", @@ -146,9 +151,10 @@ "Remove": "Remove", "Deny": "Deny", "DenyReason": "Deny Reason", + "DeniedReason": "Denied Reason", "Season": "Season", "GridTitle": "Title", - "AirDate": "AirDate", + "AirDate": "Air Date", "GridStatus": "Status", "ReportIssue": "Report Issue", "Filter": "Filter", @@ -179,7 +185,9 @@ "RequestPanel": { "Delete": "Delete Request", "Approve": "Approve Request", - "ChangeAvailability": "Mark Available" + "ChangeAvailability": "Mark Available", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { @@ -214,7 +222,9 @@ "MarkedAsResolved": "This issue has now been marked as resolved!", "MarkedAsInProgress": "This issue has now been marked as in progress!", "Delete": "Delete issue", - "DeletedIssue": "Issue has been deleted" + "DeletedIssue": "Issue has been deleted", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Clear Filter", @@ -247,8 +257,12 @@ "ViewCollection": "View Collection", "NotEnoughInfo": "Unfortunately there is not enough information about this show yet!", "AdvancedOptions": "Advanced Options", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Status", "Availability": "Availability", "RequestStatus": "Request Status", @@ -256,7 +270,7 @@ "RootFolderOverride": "Root Folder Override", "QualityOverride": "Quality Override", "Genres": "Genres", - "TheatricalRelease": "Theatrical Release", + "TheatricalRelease": "Release", "DigitalRelease": "Digital Release", "Votes": "Votes", "Runtime": "Runtime", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "This will request every season for this show", "FirstSeasonTooltip": "This will only request the First Season for this show", - "LatestSeasonTooltip": "This will only request the Latest Season for this show" - } + "LatestSeasonTooltip": "This will only request the Latest Season for this show", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Popular", "TrendingTab": "Trending", "UpcomingTab": "Upcoming", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Movies", "Combined": "Combined", "Tv": "TV", @@ -291,11 +314,19 @@ "FirstAired": "First Aired", "Writer": "Writer", "ExecProducer": "Exec Producer" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Welcome {{username}}!", "OmbiLanguage": "Language", - "DarkMode": "Dark Mode" + "DarkMode": "Dark Mode", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } -} \ No newline at end of file +} From abc3379e1a03081421f96c15b210897403b3dcb1 Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:10 +0100 Subject: [PATCH 12/81] New translations en.json (Russian) --- src/Ombi/wwwroot/translations/ru.json | 47 ++++++++++++++++++++++----- 1 file changed, 39 insertions(+), 8 deletions(-) diff --git a/src/Ombi/wwwroot/translations/ru.json b/src/Ombi/wwwroot/translations/ru.json index 932b9ed59..1ab331143 100644 --- a/src/Ombi/wwwroot/translations/ru.json +++ b/src/Ombi/wwwroot/translations/ru.json @@ -22,6 +22,7 @@ "RequestDenied": "Запрос отклонен", "NotRequested": "Не запрошено", "Requested": "Запрошено", + "Search": "Search", "Request": "Запросить", "Denied": "Отказано", "Approve": "Одобрить", @@ -31,7 +32,9 @@ "Validation": "Пожалуйста, проверьте введенные значения" }, "Cancel": "Cancel", - "Submit": "Submit" + "Submit": "Submit", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { "EmailAddressPlaceholder": "Адрес эл. почты", @@ -86,12 +89,14 @@ "MoviesTab": "Фильмы", "TvTab": "Сериалы", "MusicTab": "Музыка", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Рекомендации", "NoResults": "Извините, мы ничего не нашли!", "DigitalDate": "Дигитальный релиз: {{date}}", "TheatricalRelease": "Релиз в кинотеатрах: {{date}}", "ViewOnPlex": "Смотреть в Plex", "ViewOnEmby": "Смотреть в Emby", + "ViewOnJellyfin": "Play On Jellyfin", "RequestAdded": "Запрос на {{title}} успешно добавлен", "Similar": "Похожие", "Refine": "Уточнить", @@ -146,6 +151,7 @@ "Remove": "Удалить", "Deny": "Отклонить", "DenyReason": "Deny Reason", + "DeniedReason": "Denied Reason", "Season": "Сезон", "GridTitle": "Название", "AirDate": "Дата", @@ -179,7 +185,9 @@ "RequestPanel": { "Delete": "Delete Request", "Approve": "Approve Request", - "ChangeAvailability": "Mark Available" + "ChangeAvailability": "Mark Available", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { @@ -214,7 +222,9 @@ "MarkedAsResolved": "This issue has now been marked as resolved!", "MarkedAsInProgress": "This issue has now been marked as in progress!", "Delete": "Delete issue", - "DeletedIssue": "Issue has been deleted" + "DeletedIssue": "Issue has been deleted", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Сбросить фильтр", @@ -247,8 +257,12 @@ "ViewCollection": "View Collection", "NotEnoughInfo": "Unfortunately there is not enough information about this show yet!", "AdvancedOptions": "Advanced Options", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Статус", "Availability": "Доступность", "RequestStatus": "Request Status", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "This will request every season for this show", "FirstSeasonTooltip": "This will only request the First Season for this show", - "LatestSeasonTooltip": "This will only request the Latest Season for this show" - } + "LatestSeasonTooltip": "This will only request the Latest Season for this show", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Популярное", "TrendingTab": "Сейчас смотрят", "UpcomingTab": "Upcoming", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Фильмы", "Combined": "Combined", "Tv": "TV", @@ -291,11 +314,19 @@ "FirstAired": "First Aired", "Writer": "Writer", "ExecProducer": "Exec Producer" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Добро пожаловать, {{username}}!", "OmbiLanguage": "Language", - "DarkMode": "Dark Mode" + "DarkMode": "Dark Mode", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } -} \ No newline at end of file +} From dd45084752cd5666b479207a49fe687331e2b478 Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:10 +0100 Subject: [PATCH 13/81] New translations en.json (Slovak) --- src/Ombi/wwwroot/translations/sk.json | 45 ++++++++++++++++++++++----- 1 file changed, 38 insertions(+), 7 deletions(-) diff --git a/src/Ombi/wwwroot/translations/sk.json b/src/Ombi/wwwroot/translations/sk.json index 4c9347582..0634a81ab 100644 --- a/src/Ombi/wwwroot/translations/sk.json +++ b/src/Ombi/wwwroot/translations/sk.json @@ -22,6 +22,7 @@ "RequestDenied": "Požiadavka zamietnutá", "NotRequested": "Nepožiadané", "Requested": "Požiadané", + "Search": "Search", "Request": "Požiadať", "Denied": "Zamietnuté", "Approve": "Schválené", @@ -31,7 +32,9 @@ "Validation": "Skontrolujte zadaný obsah" }, "Cancel": "Zrušiť", - "Submit": "Odoslať" + "Submit": "Odoslať", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { "EmailAddressPlaceholder": "Emailová adresa", @@ -86,12 +89,14 @@ "MoviesTab": "Filmy", "TvTab": "Seriály", "MusicTab": "Hudba", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Návrhy", "NoResults": "Ľutujeme, nenašli sme žiadne výsledky!", "DigitalDate": "Online vydanie: {{date}}", "TheatricalRelease": "Kino vydanie: {{date}}", "ViewOnPlex": "Zobraziť na Plex", "ViewOnEmby": "Zobraziť na Emby", + "ViewOnJellyfin": "Play On Jellyfin", "RequestAdded": "Žiadosť o {{title}} bola úspešne pridaná", "Similar": "Podobné", "Refine": "Filtrovať", @@ -146,6 +151,7 @@ "Remove": "Odstrániť", "Deny": "Odmietnuť", "DenyReason": "Odmietnuť dôvod", + "DeniedReason": "Denied Reason", "Season": "Séria", "GridTitle": "Názov", "AirDate": "Dátum vysielania", @@ -179,7 +185,9 @@ "RequestPanel": { "Delete": "Odstrániž požiadavku", "Approve": "Schváliť žiadosť", - "ChangeAvailability": "Označiť k dispozícií" + "ChangeAvailability": "Označiť k dispozícií", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { @@ -214,7 +222,9 @@ "MarkedAsResolved": "Tento problém bol označený ako vyriešený!", "MarkedAsInProgress": "Tento problém bol označený ako v priebehu riešenia!", "Delete": "Odstrániť problém", - "DeletedIssue": "Problém bol odstránený" + "DeletedIssue": "Problém bol odstránený", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Vymazať filter", @@ -247,8 +257,12 @@ "ViewCollection": "Pozrieť zbierku", "NotEnoughInfo": "Bohužiaľ, o tomto seriáli nie je k dispozícií dostatok informácií!", "AdvancedOptions": "Pokročilé možnosti", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Výber profilu kvality", "RootFolderSelect": "Výber koreňového priečinka", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Stav", "Availability": "Dostupnosť", "RequestStatus": "Požiadať stav", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "Požiadať všetky sezóny série.", "FirstSeasonTooltip": "Požiadať iba prvú sezónu série.", - "LatestSeasonTooltip": "Požiadať iba poslednú sezónu série" - } + "LatestSeasonTooltip": "Požiadať iba poslednú sezónu série", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Populárne", "TrendingTab": "Trendy", "UpcomingTab": "Čoskoro", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Filmy", "Combined": "Kombinované", "Tv": "Seriály", @@ -291,11 +314,19 @@ "FirstAired": "Prvýkrát odvysielané", "Writer": "Autor", "ExecProducer": "Výkonný producent" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Vitaj {{username}}!", "OmbiLanguage": "Jazyk", - "DarkMode": "Tmavý režim" + "DarkMode": "Tmavý režim", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } } From 968fe3743ed7812ad1eb63b27ce0137d6e55c184 Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:12 +0100 Subject: [PATCH 14/81] New translations en.json (Swedish) --- src/Ombi/wwwroot/translations/sv.json | 47 ++++++++++++++++++++++----- 1 file changed, 39 insertions(+), 8 deletions(-) diff --git a/src/Ombi/wwwroot/translations/sv.json b/src/Ombi/wwwroot/translations/sv.json index 284e2a5ba..2bf40cdce 100644 --- a/src/Ombi/wwwroot/translations/sv.json +++ b/src/Ombi/wwwroot/translations/sv.json @@ -22,6 +22,7 @@ "RequestDenied": "Efterfrågan nekas", "NotRequested": "Inte begärd", "Requested": "Begärd", + "Search": "Search", "Request": "Begär", "Denied": "Nekad", "Approve": "Godkänn", @@ -31,7 +32,9 @@ "Validation": "Vänligen kontrollera din angivna värden" }, "Cancel": "Avbryt", - "Submit": "Skicka in" + "Submit": "Skicka in", + "tvShow": "TV Show", + "movie": "Movie" }, "PasswordReset": { "EmailAddressPlaceholder": "E-postadress", @@ -86,12 +89,14 @@ "MoviesTab": "Filmer", "TvTab": "TV-serier", "MusicTab": "Musik", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "Suggestions": "Förslag", "NoResults": "Tyvärr hittade vi inte några resultat!", "DigitalDate": "Digitalt releasedatum: {{date}}", "TheatricalRelease": "Biopremiär: {{date}}", "ViewOnPlex": "Visa på Plex", "ViewOnEmby": "Visa på Emby", + "ViewOnJellyfin": "Play On Jellyfin", "RequestAdded": "Begäran av {{title}} har lagts till", "Similar": "Liknande", "Refine": "Förfina", @@ -146,6 +151,7 @@ "Remove": "Ta bort", "Deny": "Neka", "DenyReason": "Anledning för nekande", + "DeniedReason": "Denied Reason", "Season": "Säsong", "GridTitle": "Titel", "AirDate": "Releasedatum", @@ -179,7 +185,9 @@ "RequestPanel": { "Delete": "Ta bort förfrågan", "Approve": "Godkänn begäran", - "ChangeAvailability": "Markera Tillgänglig" + "ChangeAvailability": "Markera Tillgänglig", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" } }, "Issues": { @@ -214,7 +222,9 @@ "MarkedAsResolved": "Detta problem har nu markerats som löst!", "MarkedAsInProgress": "Detta problem har nu markerats som på pågående!", "Delete": "Ta bort problem", - "DeletedIssue": "Problemet har tagits bort" + "DeletedIssue": "Problemet har tagits bort", + "Chat": "Chat", + "Requested": "Requested" }, "Filter": { "ClearFilter": "Rensa filter", @@ -247,8 +257,12 @@ "ViewCollection": "Visa samling", "NotEnoughInfo": "Tyvärr finns det inte tillräckligt med information om denna serie ännu!", "AdvancedOptions": "Avancerade inställningar", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", "QualityProfilesSelect": "Välj en kvalitetsprofil", "RootFolderSelect": "Välj en rotmapp", + "LanguageProfileSelect": "Select A Language Profile", "Status": "Status", "Availability": "Tillgänglighet", "RequestStatus": "Status för begäran", @@ -270,13 +284,22 @@ "EpisodeSelector": { "AllSeasonsTooltip": "Detta kommer att begära varje säsong för denna serie", "FirstSeasonTooltip": "Detta kommer endast att begära den första säsongen för denna serie", - "LatestSeasonTooltip": "Detta kommer endast att begära den senaste säsongen för denna serie" - } + "LatestSeasonTooltip": "Detta kommer endast att begära den senaste säsongen för denna serie", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" }, "Discovery": { "PopularTab": "Populära", "TrendingTab": "Hetast just nu", "UpcomingTab": "Kommande", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", "Movies": "Filmer", "Combined": "Kombinerad", "Tv": "TV", @@ -291,11 +314,19 @@ "FirstAired": "Sändes första gången", "Writer": "Författare", "ExecProducer": "Exekutiv producent" - } + }, + "NoSearch": "Sorry, nothing matches your search!" }, "UserPreferences": { "Welcome": "Välkommen {{username}}!", "OmbiLanguage": "Språk", - "DarkMode": "Mörkt läge" + "DarkMode": "Mörkt läge", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" } -} \ No newline at end of file +} From 050d181b5fcc2a9d6dd156b3430432d4dc01dd39 Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:13 +0100 Subject: [PATCH 15/81] New translations en.json (Chinese Traditional) --- src/Ombi/wwwroot/translations/zh.json | 332 ++++++++++++++++++++++++++ 1 file changed, 332 insertions(+) create mode 100644 src/Ombi/wwwroot/translations/zh.json diff --git a/src/Ombi/wwwroot/translations/zh.json b/src/Ombi/wwwroot/translations/zh.json new file mode 100644 index 000000000..5e057bad6 --- /dev/null +++ b/src/Ombi/wwwroot/translations/zh.json @@ -0,0 +1,332 @@ +{ + "Login": { + "SignInButton": "登入", + "UsernamePlaceholder": "帳戶名稱", + "PasswordPlaceholder": "密碼", + "RememberMe": "記住我", + "SignInWith": "Sign in with {{appName}}", + "SignInWithPlex": "Sign in with Plex", + "ForgottenPassword": "忘記密碼了嗎?", + "Errors": { + "IncorrectCredentials": "用戶名或密碼錯誤" + } + }, + "Common": { + "ContinueButton": "繼續", + "Available": "已收錄", + "PartiallyAvailable": "部分已收錄", + "Monitored": "監控中", + "NotAvailable": "未收錄", + "ProcessingRequest": "處理請求", + "PendingApproval": "等待批准", + "RequestDenied": "請求被拒絕", + "NotRequested": "未申請", + "Requested": "已申請", + "Search": "Search", + "Request": "請求內容", + "Denied": "拒絕", + "Approve": "確認", + "PartlyAvailable": "部分已收錄", + "ViewDetails": "View Details", + "Errors": { + "Validation": "請檢查您輸入的數值" + }, + "Cancel": "Cancel", + "Submit": "Submit", + "tvShow": "TV Show", + "movie": "Movie" + }, + "PasswordReset": { + "EmailAddressPlaceholder": "電郵地址", + "ResetPasswordButton": "重設密碼" + }, + "LandingPage": { + "OnlineHeading": "上線中", + "OnlineParagraph": "服務器當前離線。", + "PartiallyOnlineHeading": "部分上線", + "PartiallyOnlineParagraph": "媒體服務器部分在綫。", + "MultipleServersUnavailable": "{{totalServers}} 中有{{serversUnavailable}} 個服務器離綫。", + "SingleServerUnavailable": "在{{totalServers}} 服务器中,有{{serversUnavailable}} 服務器離綫。", + "OfflineHeading": "離線中", + "OfflineParagraph": "服務器當前離線。", + "CheckPageForUpdates": "檢查此頁面以獲取持續的站點更新。" + }, + "NavigationBar": { + "Discover": "Discover", + "Search": "搜索", + "Requests": "請求", + "UserManagement": "Users", + "Issues": "問題", + "Vote": "投票", + "Donate": "贊助", + "DonateLibraryMaintainer": "捐贈給維護者", + "DonateTooltip": "This is how I convince my wife to let me spend my spare time developing Ombi 😁", + "UpdateAvailableTooltip": "有可用的更新", + "Settings": "設定", + "Welcome": "歡迎您 {{username}}", + "UpdateDetails": "更新詳細資料", + "Logout": "登出", + "OpenMobileApp": "打開手機應用程序", + "RecentlyAdded": "最近新增", + "ChangeTheme": "Change Theme", + "Calendar": "Calendar", + "UserPreferences": "Preferences", + "FeatureSuggestion": "Features", + "FeatureSuggestionTooltip": "Have a great new idea? Suggest it here!", + "Filter": { + "Movies": "Movies", + "TvShows": "TV Shows", + "Music": "Music", + "People": "People" + }, + "MorningWelcome": "Good morning!", + "AfternoonWelcome": "Good afternoon!", + "EveningWelcome": "Good evening!" + }, + "Search": { + "Title": "搜索", + "Paragraph": "想觀看目前無法觀看的內容嗎?沒問題,只需在下面搜索並請求它!", + "MoviesTab": "電影", + "TvTab": "電視節目", + "MusicTab": "音樂", + "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", + "Suggestions": "建議", + "NoResults": "抱歉,我們沒有找到任何結果!", + "DigitalDate": "數字發行:{{date}}", + "TheatricalRelease": "劇場版:{{date}}", + "ViewOnPlex": "Play On Plex", + "ViewOnEmby": "Play On Emby", + "ViewOnJellyfin": "Play On Jellyfin", + "RequestAdded": "已成功添加對 {{title}} 的請求", + "Similar": "相似", + "Refine": "精簡", + "SearchBarPlaceholder": "在這裡輸入以搜尋", + "Movies": { + "PopularMovies": "熱門電影", + "UpcomingMovies": "即將上映的電影", + "TopRatedMovies": "评级最高的电影", + "NowPlayingMovies": "正在上映的電影", + "HomePage": "首頁", + "Trailer": "預告片" + }, + "TvShows": { + "Popular": "流行的", + "Trending": "趨勢", + "MostWatched": "最受矚目", + "MostAnticipated": "最期待", + "Results": "結果", + "AirDate": "播出日期:", + "AllSeasons": "全季", + "FirstSeason": "第一季", + "LatestSeason": "最新一季", + "Select": "選擇...", + "SubmitRequest": "送出請求", + "Season": "Season {{seasonNumber}}", + "SelectAllInSeason": "選擇第 {{seasonNumber}} 季中的全部" + } + }, + "Requests": { + "Title": "請求", + "Paragraph": "您可以在下方看到您的請求和所有其他請求,以及它們的下載和批准狀態。", + "MoviesTab": "電影", + "ArtistName": "Artist", + "AlbumName": "Album Name", + "TvTab": "電視節目", + "MusicTab": "音樂", + "RequestedBy": "Requested By", + "Status": "Status", + "RequestStatus": "Request status", + "Denied": " 拒絕:", + "TheatricalRelease": "劇場版:{{date}}", + "ReleaseDate": "發佈日期:{{date}}", + "TheatricalReleaseSort": "劇場版", + "DigitalRelease": "數字發行:{{date}}", + "RequestDate": "Request Date", + "QualityOverride": "質量覆蓋:", + "RootFolderOverride": "根文件夾覆蓋:", + "ChangeRootFolder": "根文件夹", + "ChangeQualityProfile": "質量設置", + "MarkUnavailable": "標記未收錄", + "MarkAvailable": "標記已收錄", + "Remove": "移除", + "Deny": "拒絕", + "DenyReason": "Deny Reason", + "DeniedReason": "Denied Reason", + "Season": "Season", + "GridTitle": "標題", + "AirDate": "Air Date", + "GridStatus": "狀態", + "ReportIssue": "回報問題", + "Filter": "篩選", + "Sort": "分類", + "SeasonNumberHeading": "季: {seasonNumber}", + "SortTitleAsc": "標題 ▲", + "SortTitleDesc": "標題 ▼", + "SortRequestDateAsc": "请求日期 ▲", + "SortRequestDateDesc": "请求日期 ▼", + "SortStatusAsc": "狀態 ▲", + "SortStatusDesc": "狀態 ▼", + "Remaining": { + "Quota": "{{remaining}}/{{total}} 個剩餘請求", + "NextDays": "將在 {{time}} 天內添加另一個請求", + "NextHours": "將在 {{time}} 小時內添加另一個請求", + "NextMinutes": "將在 {{time}} 分鐘內添加另一個請求", + "NextMinute": "將在 {{time}} 分鐘內添加另一個請求" + }, + "AllRequests": "All Requests", + "PendingRequests": "Pending Requests", + "ProcessingRequests": "Processing Requests", + "AvailableRequests": "Available Requests", + "DeniedRequests": "Denied Requests", + "RequestsToDisplay": "Requests to display", + "RequestsTitle": "Title", + "Details": "Details", + "Options": "Options", + "RequestPanel": { + "Delete": "Delete Request", + "Approve": "Approve Request", + "ChangeAvailability": "Mark Available", + "Deleted": "Successfully deleted selected items", + "Approved": "Successfully approved selected items" + } + }, + "Issues": { + "Title": "問題", + "PendingTitle": "未決問題", + "InProgressTitle": "進行中的問題", + "ResolvedTitle": "已解決的問題", + "ColumnTitle": "標題", + "Count": "Count", + "Category": "分類", + "Status": "狀態", + "Details": "詳細資料", + "Description": "描述信息", + "NoComments": "暫無評論!", + "MarkInProgress": "標記為進行中", + "MarkResolved": "標記為已解決", + "SendMessageButton": "發送", + "Subject": "主題", + "Comments": "評論", + "WriteMessagePlaceholder": "在這裡撰寫訊息...", + "ReportedBy": "報告者:", + "IssueDialog": { + "Title": "Report an issue", + "DescriptionPlaceholder": "Please describe the issue", + "TitlePlaceholder": "Short title of your issue", + "SelectCategory": "Select Category", + "IssueCreated": "Issue has been created" + }, + "Outstanding": "There are outstanding issues", + "ResolvedDate": "Resolved date", + "CreatedDate": "Raised on", + "MarkedAsResolved": "This issue has now been marked as resolved!", + "MarkedAsInProgress": "This issue has now been marked as in progress!", + "Delete": "Delete issue", + "DeletedIssue": "Issue has been deleted", + "Chat": "Chat", + "Requested": "Requested" + }, + "Filter": { + "ClearFilter": "清除篩選條件", + "FilterHeaderAvailability": "可用性", + "FilterHeaderRequestStatus": "狀態", + "Approved": "已通過審核", + "PendingApproval": "待決審核" + }, + "UserManagment": { + "TvRemaining": "電視:{{remaining}}/{{total}} 剩餘", + "MovieRemaining": "電影:{{remaining}}/{{total}} 剩餘", + "MusicRemaining": "音樂:{{remaining}}/{{total}} 剩餘", + "TvDue": "電視:{{date}}", + "MovieDue": "電影:{{date}}", + "MusicDue": "音樂:{{date}}" + }, + "Votes": { + "CompletedVotesTab": "已投票", + "VotesTab": "需要投票" + }, + "MediaDetails": { + "Denied": "Denied", + "RecommendationsTitle": "Recommendations", + "SimilarTitle": "Similar", + "VideosTitle": "Videos", + "AlbumsTitle": "Albums", + "RequestAllAlbums": "Request All Albums", + "ClearSelection": "Clear Selection", + "RequestSelectedAlbums": "Request Selected Albums", + "ViewCollection": "View Collection", + "NotEnoughInfo": "Unfortunately there is not enough information about this show yet!", + "AdvancedOptions": "Advanced Options", + "AutoApproveOptions": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTv": "You can configure the request here, once requested it will be send to your DVR application and will be auto approved! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "AutoApproveOptionsTvShort": "You can configure the request here, once requested it will be send to your DVR application! If the request is already in Sonarr, we will not change the root folder or quality profile if you set it! Please note, this is optional, just press Request to skip!", + "QualityProfilesSelect": "Select A Quality Profile", + "RootFolderSelect": "Select A Root Folder", + "LanguageProfileSelect": "Select A Language Profile", + "Status": "Status", + "Availability": "Availability", + "RequestStatus": "Request Status", + "Quality": "Quality", + "RootFolderOverride": "Root Folder Override", + "QualityOverride": "Quality Override", + "Genres": "Genres", + "TheatricalRelease": "Release", + "DigitalRelease": "Digital Release", + "Votes": "Votes", + "Runtime": "Runtime", + "Minutes": "{{runtime}} Minutes", + "Revenue": "Revenue", + "Budget": "Budget", + "Keywords": "Keywords/Tags", + "Casts": { + "CastTitle": "Cast" + }, + "EpisodeSelector": { + "AllSeasonsTooltip": "This will request every season for this show", + "FirstSeasonTooltip": "This will only request the First Season for this show", + "LatestSeasonTooltip": "This will only request the Latest Season for this show", + "NoEpisodes": "There unfortunately is no episode data for this show yet!" + }, + "SonarrConfiguration": "Sonarr Configuration", + "RadarrConfiguration": "Radarr Configuration", + "RequestOnBehalf": "Request on behalf of", + "PleaseSelectUser": "Please select a user", + "StreamingOn": "Streaming On", + "ReProcessRequest": "Re-Process Request" + }, + "Discovery": { + "PopularTab": "Popular", + "TrendingTab": "Trending", + "UpcomingTab": "Upcoming", + "SeasonalTab": "Seasonal", + "RecentlyRequestedTab": "Recently Requested", + "Movies": "Movies", + "Combined": "Combined", + "Tv": "TV", + "CardDetails": { + "Availability": "Availability", + "Studio": "Studio", + "Network": "Network", + "UnknownNetwork": "Unknown", + "RequestStatus": "Request Status", + "Director": "Director", + "InCinemas": "In Cinemas", + "FirstAired": "First Aired", + "Writer": "Writer", + "ExecProducer": "Exec Producer" + }, + "NoSearch": "Sorry, nothing matches your search!" + }, + "UserPreferences": { + "Welcome": "Welcome {{username}}!", + "OmbiLanguage": "Language", + "DarkMode": "Dark Mode", + "Updated": "Successfully Updated", + "StreamingCountry": "Streaming Country", + "StreamingCountryDescription": "This is the country code that we will display streaming information for. If you are in the US please select US and you will have US related streaming information.", + "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", + "MobileQRCode": "Mobile QR Code", + "LegacyApp": "Launch Legacy App", + "NoQrCode": "Please contact your administrator to enable QR codes" + } +} From d31840b541be0a084da8faabc6031fbf9d916e40 Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 18 Oct 2021 15:51:15 +0100 Subject: [PATCH 16/81] New translations en.json (Portuguese, Brazilian) --- src/Ombi/wwwroot/translations/pt.json | 290 +++++++++++++------------- 1 file changed, 145 insertions(+), 145 deletions(-) diff --git a/src/Ombi/wwwroot/translations/pt.json b/src/Ombi/wwwroot/translations/pt.json index ac38b8d2c..911ba9d2f 100644 --- a/src/Ombi/wwwroot/translations/pt.json +++ b/src/Ombi/wwwroot/translations/pt.json @@ -1,77 +1,77 @@ { "Login": { - "SignInButton": "Sign in", - "UsernamePlaceholder": "Username", - "PasswordPlaceholder": "Password", - "RememberMe": "Remember Me", - "SignInWith": "Sign in with {{appName}}", - "SignInWithPlex": "Sign in with Plex", - "ForgottenPassword": "Forgot your password?", + "SignInButton": "Iniciar sessão", + "UsernamePlaceholder": "Nome de usuário", + "PasswordPlaceholder": "Senha", + "RememberMe": "Lembrar-me", + "SignInWith": "Entre com {{appName}}", + "SignInWithPlex": "Iniciar sessão com Plex", + "ForgottenPassword": "Esqueceu sua senha?", "Errors": { - "IncorrectCredentials": "Incorrect username or password" + "IncorrectCredentials": "Nome de usuário ou senha incorretos" } }, "Common": { - "ContinueButton": "Continue", - "Available": "Available", - "PartiallyAvailable": "Partially Available", - "Monitored": "Monitored", - "NotAvailable": "Not Available", - "ProcessingRequest": "Processing Request", - "PendingApproval": "Pending Approval", - "RequestDenied": "Request Denied", - "NotRequested": "Not Requested", - "Requested": "Requested", + "ContinueButton": "Continuar", + "Available": "Disponível", + "PartiallyAvailable": "Parcialmente Disponível", + "Monitored": "Monitorado", + "NotAvailable": "Não Disponível", + "ProcessingRequest": "Processando Solicitação", + "PendingApproval": "Aprovação Pendente", + "RequestDenied": "Solicitação Negada", + "NotRequested": "Não Solicitado", + "Requested": "Solicitado", "Search": "Search", - "Request": "Request", - "Denied": "Denied", - "Approve": "Approve", - "PartlyAvailable": "Partly Available", - "ViewDetails": "View Details", + "Request": "Solicitar", + "Denied": "Negado", + "Approve": "Aprovar", + "PartlyAvailable": "Parcialmente Disponível", + "ViewDetails": "Ver detalhes", "Errors": { - "Validation": "Please check your entered values" + "Validation": "Por favor, verifique os dados inseridos" }, - "Cancel": "Cancel", - "Submit": "Submit", + "Cancel": "Cancelar", + "Submit": "Submeter", "tvShow": "TV Show", "movie": "Movie" }, "PasswordReset": { - "EmailAddressPlaceholder": "Email Address", - "ResetPasswordButton": "Reset Password" + "EmailAddressPlaceholder": "Endereço de e-mail", + "ResetPasswordButton": "Redefinir Senha" }, "LandingPage": { - "OnlineHeading": "Currently Online", - "OnlineParagraph": "The media server is currently online", - "PartiallyOnlineHeading": "Partially Online", - "PartiallyOnlineParagraph": "The media server is partially online.", - "MultipleServersUnavailable": "There are {{serversUnavailable}} servers offline out of {{totalServers}}.", - "SingleServerUnavailable": "There is {{serversUnavailable}} server offline out of {{totalServers}}.", - "OfflineHeading": "Currently Offline", - "OfflineParagraph": "The media server is currently offline.", - "CheckPageForUpdates": "Check this page for continuous site updates." + "OnlineHeading": "Online no momento", + "OnlineParagraph": "O servidor de mídia está atualmente online", + "PartiallyOnlineHeading": "Parcialmente Online", + "PartiallyOnlineParagraph": "O servidor de mídia está parcialmente online.", + "MultipleServersUnavailable": "Existem {{serversUnavailable}} servidores offline de um total de {{totalServers}}.", + "SingleServerUnavailable": "Existe {{serversUnavailable}} servidor offline de um total de {{totalServers}}.", + "OfflineHeading": "Offline Agora", + "OfflineParagraph": "O servidor de mídia está atualmente offline.", + "CheckPageForUpdates": "Verifique esta página para acompanhar as atualizações do site." }, "NavigationBar": { "Discover": "Discover", - "Search": "Search", - "Requests": "Requests", - "UserManagement": "Users", - "Issues": "Issues", - "Vote": "Vote", - "Donate": "Donate!", - "DonateLibraryMaintainer": "Donate to Library Maintainer", + "Search": "Pesquisar", + "Requests": "Solicitações", + "UserManagement": "User Management", + "Issues": "Problemas", + "Vote": "Votar", + "Donate": "Doações!", + "DonateLibraryMaintainer": "Doar para o Dono da Biblioteca", "DonateTooltip": "This is how I convince my wife to let me spend my spare time developing Ombi 😁", - "UpdateAvailableTooltip": "Update Available!", - "Settings": "Settings", - "Welcome": "Welcome {{username}}", - "UpdateDetails": "Update Details", - "Logout": "Logout", - "OpenMobileApp": "Open Mobile App", - "RecentlyAdded": "Recently Added", + "UpdateAvailableTooltip": "Atualização Disponível!", + "Settings": "Configurações", + "Welcome": "Bem-vindo(a), {{username}}", + "UpdateDetails": "Detalhes da Atualização", + "Logout": "Desconectar", + "OpenMobileApp": "Abrir Aplicativo do Celular", + "RecentlyAdded": "Recentemente Adicionado", "ChangeTheme": "Change Theme", "Calendar": "Calendar", "UserPreferences": "Preferences", - "FeatureSuggestion": "Features", + "FeatureSuggestion": "Feature Suggestion", "FeatureSuggestionTooltip": "Have a great new idea? Suggest it here!", "Filter": { "Movies": "Movies", @@ -84,94 +84,94 @@ "EveningWelcome": "Good evening!" }, "Search": { - "Title": "Search", - "Paragraph": "Want to watch something that is not currently available? No problem, just search for it below and request it!", - "MoviesTab": "Movies", - "TvTab": "TV Shows", - "MusicTab": "Music", + "Title": "Pesquisar", + "Paragraph": "Quer assistir a algo que não está disponível? Sem problemas, basta pesquisar abaixo e solicitar!", + "MoviesTab": "Filmes", + "TvTab": "Séries", + "MusicTab": "Músicas", "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", - "Suggestions": "Suggestions", - "NoResults": "Sorry, we didn't find any results!", - "DigitalDate": "Digital Release: {{date}}", - "TheatricalRelease": "Theatrical Release: {{date}}", - "ViewOnPlex": "Play On Plex", - "ViewOnEmby": "Play On Emby", + "Suggestions": "Sugestões", + "NoResults": "Desculpe, não encontramos nenhum resultado!", + "DigitalDate": "Lançamento Digital: {{date}}", + "TheatricalRelease": "Lançamento nos Cinemas: {{date}}", + "ViewOnPlex": "View On Plex", + "ViewOnEmby": "View On Emby", "ViewOnJellyfin": "Play On Jellyfin", - "RequestAdded": "Request for {{title}} has been added successfully", - "Similar": "Similar", - "Refine": "Refine", - "SearchBarPlaceholder": "Type Here to Search", + "RequestAdded": "O pedido de {{title}} foi adicionado com sucesso", + "Similar": "Semelhantes", + "Refine": "Corrigir", + "SearchBarPlaceholder": "Digite Aqui para Pesquisar", "Movies": { - "PopularMovies": "Popular Movies", - "UpcomingMovies": "Upcoming Movies", - "TopRatedMovies": "Top Rated Movies", - "NowPlayingMovies": "Now Playing Movies", - "HomePage": "Home Page", + "PopularMovies": "Filmes Populares", + "UpcomingMovies": "Filmes Em Breve", + "TopRatedMovies": "Filmes Mais Votados", + "NowPlayingMovies": "Filmes em Cartaz", + "HomePage": "Página Inicial", "Trailer": "Trailer" }, "TvShows": { "Popular": "Popular", - "Trending": "Trending", - "MostWatched": "Most Watched", - "MostAnticipated": "Most Anticipated", - "Results": "Results", - "AirDate": "Air Date:", - "AllSeasons": "All Seasons", - "FirstSeason": "First Season", - "LatestSeason": "Latest Season", - "Select": "Select ...", - "SubmitRequest": "Submit Request", + "Trending": "Tendências", + "MostWatched": "Mais Assistidos", + "MostAnticipated": "Mais Aguardados", + "Results": "Resultados", + "AirDate": "Data de Exibição:", + "AllSeasons": "Todas as Temporadas", + "FirstSeason": "Primeira temporada", + "LatestSeason": "Última Temporada", + "Select": "Selecionar...", + "SubmitRequest": "Enviar solicitação", "Season": "Season {{seasonNumber}}", - "SelectAllInSeason": "Select All in Season {{seasonNumber}}" + "SelectAllInSeason": "Selecione Tudo na Temporada {{seasonNumber}}" } }, "Requests": { - "Title": "Requests", - "Paragraph": "Below you can see yours and all other requests, as well as their download and approval status.", - "MoviesTab": "Movies", + "Title": "Solicitações", + "Paragraph": "Abaixo, você pode ver o seu e todos os outros pedidos, bem como o seu download e status de aprovação.", + "MoviesTab": "Filmes", "ArtistName": "Artist", "AlbumName": "Album Name", - "TvTab": "TV Shows", - "MusicTab": "Music", + "TvTab": "Séries", + "MusicTab": "Músicas", "RequestedBy": "Requested By", "Status": "Status", "RequestStatus": "Request status", - "Denied": " Denied:", - "TheatricalRelease": "Theatrical Release: {{date}}", - "ReleaseDate": "Released: {{date}}", - "TheatricalReleaseSort": "Theatrical Release", - "DigitalRelease": "Digital Release: {{date}}", + "Denied": " Negados:", + "TheatricalRelease": "Lançamento nos Cinemas: {{date}}", + "ReleaseDate": "Lançado: {{date}}", + "TheatricalReleaseSort": "Lançamento nos Cinemas", + "DigitalRelease": "Lançamento Digital: {{date}}", "RequestDate": "Request Date", - "QualityOverride": "Quality Override:", - "RootFolderOverride": "Root Folder Override:", - "ChangeRootFolder": "Root Folder", - "ChangeQualityProfile": "Quality Profile", - "MarkUnavailable": "Mark Unavailable", - "MarkAvailable": "Mark Available", - "Remove": "Remove", - "Deny": "Deny", + "QualityOverride": "Substituição de Qualidade:", + "RootFolderOverride": "Substituição da Pasta Raiz:", + "ChangeRootFolder": "Pasta Raiz", + "ChangeQualityProfile": "Perfil de Qualidade", + "MarkUnavailable": "Marcar como Indisponível", + "MarkAvailable": "Marcar como Disponível", + "Remove": "Remover", + "Deny": "Negar", "DenyReason": "Deny Reason", "DeniedReason": "Denied Reason", "Season": "Season", - "GridTitle": "Title", - "AirDate": "Air Date", + "GridTitle": "Título", + "AirDate": "AirDate", "GridStatus": "Status", - "ReportIssue": "Report Issue", - "Filter": "Filter", - "Sort": "Sort", - "SeasonNumberHeading": "Season: {seasonNumber}", - "SortTitleAsc": "Title ▲", - "SortTitleDesc": "Title ▼", - "SortRequestDateAsc": "Request Date ▲", - "SortRequestDateDesc": "Request Date ▼", + "ReportIssue": "Relatar Problema", + "Filter": "Filtro", + "Sort": "Ordenar por", + "SeasonNumberHeading": "Temporada: {seasonNumber}", + "SortTitleAsc": "Título ▲", + "SortTitleDesc": "Título ▼", + "SortRequestDateAsc": "Data da Solicitação ▲", + "SortRequestDateDesc": "Data da Solicitação ▼", "SortStatusAsc": "Status ▲", "SortStatusDesc": "Status ▼", "Remaining": { - "Quota": "{{remaining}}/{{total}} requests remaining", - "NextDays": "Another request will be added in {{time}} days", - "NextHours": "Another request will be added in {{time}} hours", - "NextMinutes": "Another request will be added in {{time}} minutes", - "NextMinute": "Another request will be added in {{time}} minute" + "Quota": "{{remaining}}/{{total}} solicitações restantes", + "NextDays": "Outra solicitação será adicionada em {{time}} dias", + "NextHours": "Outra solicitação será adicionada em {{time}} horas", + "NextMinutes": "Outra solicitação será adicionada em {{time}} minutos", + "NextMinute": "Outra solicitação será adicionada em {{time}} minuto" }, "AllRequests": "All Requests", "PendingRequests": "Pending Requests", @@ -191,24 +191,24 @@ } }, "Issues": { - "Title": "Issues", - "PendingTitle": "Pending Issues", - "InProgressTitle": "In Progress Issues", - "ResolvedTitle": "Resolved Issues", - "ColumnTitle": "Title", + "Title": "Problemas", + "PendingTitle": "Problemas pendentes", + "InProgressTitle": "Problemas em resolução", + "ResolvedTitle": "Problemas Resolvidos", + "ColumnTitle": "Título", "Count": "Count", - "Category": "Category", + "Category": "Categoria", "Status": "Status", - "Details": "Details", - "Description": "Description", - "NoComments": "No Comments!", - "MarkInProgress": "Mark In Progress", - "MarkResolved": "Mark Resolved", - "SendMessageButton": "Send", - "Subject": "Subject", - "Comments": "Comments", - "WriteMessagePlaceholder": "Write your message here...", - "ReportedBy": "Reported By", + "Details": "Detalhes", + "Description": "Descrição", + "NoComments": "Sem Comentários!", + "MarkInProgress": "Marcar como em andamento", + "MarkResolved": "Marcar como resolvido", + "SendMessageButton": "Enviar", + "Subject": "Assunto", + "Comments": "Comentários", + "WriteMessagePlaceholder": "Escreva sua mensagem aqui...", + "ReportedBy": "Reportado por", "IssueDialog": { "Title": "Report an issue", "DescriptionPlaceholder": "Please describe the issue", @@ -227,23 +227,23 @@ "Requested": "Requested" }, "Filter": { - "ClearFilter": "Clear Filter", - "FilterHeaderAvailability": "Availability", + "ClearFilter": "Limpar Filtro", + "FilterHeaderAvailability": "Disponibilidade", "FilterHeaderRequestStatus": "Status", - "Approved": "Approved", - "PendingApproval": "Pending Approval" + "Approved": "Aprovado", + "PendingApproval": "Aprovação Pendente" }, "UserManagment": { - "TvRemaining": "TV: {{remaining}}/{{total}} remaining", - "MovieRemaining": "Movies: {{remaining}}/{{total}} remaining", - "MusicRemaining": "Music: {{remaining}}/{{total}} remaining", - "TvDue": "TV: {{date}}", - "MovieDue": "Movie: {{date}}", - "MusicDue": "Music: {{date}}" + "TvRemaining": "Séries: {{remaining}}/{{total}} restantes", + "MovieRemaining": "Filmes: {{remaining}}/{{total}} restantes", + "MusicRemaining": "Músicas: {{remaining}}/{{total}} restantes", + "TvDue": "Série: {{date}}", + "MovieDue": "Filme: {{date}}", + "MusicDue": "Música: {{date}}" }, "Votes": { - "CompletedVotesTab": "Voted", - "VotesTab": "Votes Needed" + "CompletedVotesTab": "Votado", + "VotesTab": "Votos necessários" }, "MediaDetails": { "Denied": "Denied", @@ -270,7 +270,7 @@ "RootFolderOverride": "Root Folder Override", "QualityOverride": "Quality Override", "Genres": "Genres", - "TheatricalRelease": "Release", + "TheatricalRelease": "Theatrical Release", "DigitalRelease": "Digital Release", "Votes": "Votes", "Runtime": "Runtime", From e8e4ad15714ec7a23a342c63e7c0d30ba8fee2fd Mon Sep 17 00:00:00 2001 From: Florian Dupret <34862846+sephrat@users.noreply.github.com> Date: Mon, 18 Oct 2021 17:46:38 +0200 Subject: [PATCH 17/81] Localize harcoded texts --- .../components/requests-list.component.html | 6 +++--- .../advanced-search-dialog.component.html | 13 +++++++------ .../genre-select/genre-select.component.html | 2 +- .../keyword-search/keyword-search.component.html | 2 +- .../watch-providers-select.component.html | 2 +- src/Ombi/wwwroot/translations/en.json | 10 ++++++++-- 6 files changed, 21 insertions(+), 14 deletions(-) diff --git a/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.html b/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.html index 9a58c9d1d..3f1b9c861 100644 --- a/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.html +++ b/src/Ombi/ClientApp/src/app/requests-list/components/requests-list.component.html @@ -1,17 +1,17 @@
- + - + - + diff --git a/src/Ombi/ClientApp/src/app/shared/advanced-search-dialog/advanced-search-dialog.component.html b/src/Ombi/ClientApp/src/app/shared/advanced-search-dialog/advanced-search-dialog.component.html index 4c8e58821..b0ff4a81e 100644 --- a/src/Ombi/ClientApp/src/app/shared/advanced-search-dialog/advanced-search-dialog.component.html +++ b/src/Ombi/ClientApp/src/app/shared/advanced-search-dialog/advanced-search-dialog.component.html @@ -1,6 +1,6 @@

- Advanced Search + {{ "Search.AdvancedSearchHeader" | translate }}



- {{'MediaDetails.StreamingOn' | translate }}: + {{'MediaDetails.StreamingOn' | translate }}
@@ -26,11 +26,11 @@

- {{'MediaDetails.Status' | translate }}: - {{movie.status}} + {{'MediaDetails.Status' | translate }} + {{ getMovieStatusLabel()}}
- {{'MediaDetails.Availability' | translate }}: + {{'MediaDetails.Availability' | translate }} {{'Common.Available' | translate}} {{'Common.NotAvailable' | translate}}
@@ -44,23 +44,23 @@
- {{'Requests.RequestedBy' | translate }}: + {{'MediaDetails.RequestedBy' | translate }} {{request.requestedUser.userAlias}}
- {{'Requests.RequestDate' | translate }}: + {{'MediaDetails.RequestDate' | translate }} {{request.requestedDate | date}}
- {{'Requests.DeniedReason' | translate }}: + {{'MediaDetails.DeniedReason' | translate }} {{request.deniedReason}}
- {{'MediaDetails.Quality' | translate }}: + {{'MediaDetails.Quality' | translate }}
{{movie.quality | quality}}
@@ -77,34 +77,34 @@
- {{'MediaDetails.TheatricalRelease' | translate }}: + {{'MediaDetails.TheatricalRelease' | translate }} {{movie.releaseDate | date: 'mediumDate'}}
- {{'MediaDetails.DigitalRelease' | translate }}: + {{'MediaDetails.DigitalRelease' | translate }} {{movie.digitalReleaseDate | date: 'mediumDate'}}
- {{'MediaDetails.Votes' | translate }}: + {{'MediaDetails.Votes' | translate }} {{movie.voteCount | thousandShort: 1}}
- {{'MediaDetails.Runtime' | translate }}: + {{'MediaDetails.Runtime' | translate }} {{'MediaDetails.Minutes' | translate:{runtime: movie.runtime} }}
- {{'MediaDetails.Revenue' | translate }}: + {{'MediaDetails.Revenue' | translate }} {{movie.revenue | currency: 'USD'}}
- {{'MediaDetails.Budget' | translate }}: + {{'MediaDetails.Budget' | translate }} {{movie.budget | currency: 'USD'}}

- {{'MediaDetails.Genres' | translate }}: + {{'MediaDetails.Genres' | translate }}
@@ -116,7 +116,7 @@
- {{'MediaDetails.Keywords' | translate }}: + {{'MediaDetails.Keywords' | translate }} {{keyword.name}} diff --git a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.ts b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.ts index c11a0f61c..174f692de 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.ts +++ b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.ts @@ -1,4 +1,5 @@ import { Component, ViewEncapsulation, Input, OnInit, Inject } from "@angular/core"; +import { TranslateService } from "@ngx-translate/core"; import { ISearchMovieResultV2 } from "../../../../interfaces/ISearchMovieResultV2"; import { IMovieRequests } from "../../../../interfaces"; import { SearchV2Service } from "../../../../services/searchV2.service"; @@ -13,7 +14,8 @@ import { IStreamingData } from "../../../../interfaces/IStreams"; }) export class MovieInformationPanelComponent implements OnInit { - constructor(private searchService: SearchV2Service, @Inject(APP_BASE_HREF) public internalBaseUrl: string) { } + constructor(private searchService: SearchV2Service, @Inject(APP_BASE_HREF) public internalBaseUrl: string, + private translate: TranslateService) { } @Input() public movie: ISearchMovieResultV2; @Input() public request: IMovieRequests; @@ -33,4 +35,14 @@ export class MovieInformationPanelComponent implements OnInit { this.searchService.getMovieStreams(this.movie.id).subscribe(x => this.streams = x); } + + public getMovieStatusLabel() { + const textKey = 'MediaDetails.StatusValues.' + this.movie.status; + const text = this.translate.instant(textKey); + if (text !== textKey) { + return text; + } else { + return this.movie.status; + } + } } diff --git a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html index 1e3fdbcd6..6f7278c6b 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html @@ -11,7 +11,7 @@

- {{'MediaDetails.StreamingOn' | translate }}: + {{'MediaDetails.StreamingOn' | translate }}
@@ -21,44 +21,44 @@

- {{'MediaDetails.Status' | translate }}: - {{tv.status}} + {{'MediaDetails.Status' | translate }} + {{ getTVStatusLabel()}}
- First Aired: + {{'MediaDetails.FirstAired' | translate }} {{tv.firstAired | date: 'mediumDate'}}
- Seasons: + {{'MediaDetails.Seasons' | translate }} {{seasonCount}}
- Episodes: + {{'MediaDetails.Episodes' | translate }} {{totalEpisodes}}
- {{'MediaDetails.RootFolderOverride' | translate }}: + {{'MediaDetails.RootFolderOverride' | translate }}
{{request.rootPathOverrideTitle}}
- {{'MediaDetails.QualityOverride' | translate }}: + {{'MediaDetails.QualityOverride' | translate }}
{{request.qualityOverrideTitle}}
- {{'MediaDetails.Runtime' | translate }}: + {{'MediaDetails.Runtime' | translate }} {{'MediaDetails.Minutes' | translate:{ runtime: tv.runtime} }}
- Network: + {{'MediaDetails.Network' | translate }} {{tv.network.name}}
- {{'MediaDetails.Genres' | translate }}: + {{'MediaDetails.Genres' | translate }}
diff --git a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.ts b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.ts index d5ba5cbd6..46175847f 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.ts +++ b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.ts @@ -1,5 +1,6 @@ import { APP_BASE_HREF } from "@angular/common"; import { Component, ViewEncapsulation, Input, OnInit, Inject } from "@angular/core"; +import { TranslateService } from "@ngx-translate/core"; import { ITvRequests } from "../../../../../interfaces"; import { ITvRatings } from "../../../../../interfaces/IRatings"; import { ISearchTvResultV2 } from "../../../../../interfaces/ISearchTvResultV2"; @@ -14,7 +15,8 @@ import { SearchV2Service } from "../../../../../services"; }) export class TvInformationPanelComponent implements OnInit { - constructor(private searchService: SearchV2Service, @Inject(APP_BASE_HREF) public internalBaseUrl: string) { } + constructor(private searchService: SearchV2Service, @Inject(APP_BASE_HREF) public internalBaseUrl: string, + private translate: TranslateService) { } @Input() public tv: ISearchTvResultV2; @Input() public request: ITvRequests; @@ -43,5 +45,15 @@ export class TvInformationPanelComponent implements OnInit { public sortBy(prop: string) { return this.streams.sort((a, b) => a[prop] > b[prop] ? 1 : a[prop] === b[prop] ? 0 : -1); - } + } + + public getTVStatusLabel() { + const textKey = 'MediaDetails.StatusValues.' + this.tv.status; + const text = this.translate.instant(textKey); + if (text !== textKey) { + return text; + } else { + return this.tv.status; + } + } } diff --git a/src/Ombi/wwwroot/translations/en.json b/src/Ombi/wwwroot/translations/en.json index 67eb312d8..3eecf5a26 100644 --- a/src/Ombi/wwwroot/translations/en.json +++ b/src/Ombi/wwwroot/translations/en.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Continue", "Available": "Available", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Partially Available", "Monitored": "Monitored", "NotAvailable": "Not Available", @@ -269,21 +271,33 @@ "QualityProfilesSelect":"Select A Quality Profile", "RootFolderSelect":"Select A Root Folder", "LanguageProfileSelect":"Select A Language Profile", - "Status":"Status", - "Availability":"Availability", + "Status":"Status:", + "StatusValues" : { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability":"Availability:", "RequestStatus":"Request Status", - "Quality":"Quality", - "RootFolderOverride":"Root Folder Override", - "QualityOverride":"Quality Override", - "Genres":"Genres", - "TheatricalRelease":"Release", - "DigitalRelease":"Digital Release", - "Votes":"Votes", - "Runtime":"Runtime", + "Quality":"Quality:", + "RootFolderOverride":"Root Folder Override:", + "QualityOverride":"Quality Override:", + "Network":"Network:", + "Genres":"Genres:", + "FirstAired":"First Aired:", + "TheatricalRelease":"Release:", + "DigitalRelease":"Digital Release:", + "Votes":"Votes:", + "Runtime":"Runtime:", "Minutes": "{{runtime}} Minutes", - "Revenue":"Revenue", - "Budget":"Budget", - "Keywords":"Keywords/Tags", + "Revenue":"Revenue:", + "Budget":"Budget:", + "Keywords":"Keywords/Tags:", "Casts": { "CastTitle": "Cast" }, @@ -297,7 +311,10 @@ "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { From fa1e711a25cdc6acbfdd0de4bd1d903fa2e5b5f3 Mon Sep 17 00:00:00 2001 From: Florian Dupret <34862846+sephrat@users.noreply.github.com> Date: Tue, 19 Oct 2021 11:14:38 +0200 Subject: [PATCH 42/81] Localize dates --- src/Ombi/ClientApp/src/app/app.module.ts | 33 +++++++++++++++++++ .../details-group.component.html | 2 +- .../movie-information-panel.component.html | 6 ++-- .../tv-information-panel.component.html | 2 +- .../ClientApp/src/app/pipes/LocalizedDate.ts | 16 +++++++++ .../ClientApp/src/app/pipes/pipe.module.ts | 5 +-- .../about/update-dialog.component.html | 2 +- 7 files changed, 58 insertions(+), 8 deletions(-) create mode 100644 src/Ombi/ClientApp/src/app/pipes/LocalizedDate.ts diff --git a/src/Ombi/ClientApp/src/app/app.module.ts b/src/Ombi/ClientApp/src/app/app.module.ts index b4e78087c..d22edbfbc 100644 --- a/src/Ombi/ClientApp/src/app/app.module.ts +++ b/src/Ombi/ClientApp/src/app/app.module.ts @@ -66,6 +66,39 @@ import { TranslateHttpLoader } from "@ngx-translate/http-loader"; import { UnauthorizedInterceptor } from "./auth/unauthorized.interceptor"; import { environment } from "../environments/environment"; +import { registerLocaleData } from '@angular/common'; +// TODO: lazy load locales, probably somewhere in app.component +import localeDa from '@angular/common/locales/da'; +import localeDe from '@angular/common/locales/de'; +import localeEs from '@angular/common/locales/es'; +import localeFr from '@angular/common/locales/fr'; +import localeIt from '@angular/common/locales/it'; +import localeHu from '@angular/common/locales/hu'; +import localeNl from '@angular/common/locales/nl'; +// import localeNo from '@angular/common/locales/no'; +import localePl from '@angular/common/locales/pl'; +import localePt from '@angular/common/locales/pt'; +import localeSk from '@angular/common/locales/sk'; +import localeSv from '@angular/common/locales/sv'; +import localeBg from '@angular/common/locales/bg'; +import localeRu from '@angular/common/locales/ru'; + + +registerLocaleData(localeDa); +registerLocaleData(localeDe); +registerLocaleData(localeEs); +registerLocaleData(localeFr); +registerLocaleData(localeIt); +registerLocaleData(localeHu); +registerLocaleData(localeNl); +// registerLocaleData(localeNo); +registerLocaleData(localePl); +registerLocaleData(localePt); +registerLocaleData(localeSk); +registerLocaleData(localeSv); +registerLocaleData(localeBg); +registerLocaleData(localeRu); + const routes: Routes = [ { path: "*", component: PageNotFoundComponent }, { path: "", redirectTo: "/discover", pathMatch: "full" }, diff --git a/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html b/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html index c4906baac..46a77d575 100644 --- a/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html +++ b/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html @@ -1,7 +1,7 @@ {{issue.subject}} - {{issue.userReported?.userName}} on {{issue.createdDate | date:short}} + {{issue.userReported?.userName}} on {{issue.createdDate | localizedDate:short}}

diff --git a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html index 2e88e6edc..480e19ddd 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html @@ -50,7 +50,7 @@

{{'MediaDetails.RequestDate' | translate }} - {{request.requestedDate | date}} + {{request.requestedDate | localizedDate}}
@@ -78,11 +78,11 @@
{{'MediaDetails.TheatricalRelease' | translate }} - {{movie.releaseDate | date: 'mediumDate'}} + {{movie.releaseDate | localizedDate: 'mediumDate'}}
{{'MediaDetails.DigitalRelease' | translate }} - {{movie.digitalReleaseDate | date: 'mediumDate'}} + {{movie.digitalReleaseDate | localizedDate: 'mediumDate'}}
diff --git a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html index 6f7278c6b..ddf6fd44c 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html @@ -25,7 +25,7 @@ {{ getTVStatusLabel()}}
{{'MediaDetails.FirstAired' | translate }} - {{tv.firstAired | date: 'mediumDate'}} + {{tv.firstAired | localizedDate: 'mediumDate'}}
diff --git a/src/Ombi/ClientApp/src/app/pipes/LocalizedDate.ts b/src/Ombi/ClientApp/src/app/pipes/LocalizedDate.ts new file mode 100644 index 000000000..ab71fa36d --- /dev/null +++ b/src/Ombi/ClientApp/src/app/pipes/LocalizedDate.ts @@ -0,0 +1,16 @@ +import { DatePipe } from '@angular/common'; +import { Pipe, PipeTransform } from '@angular/core'; +import { TranslateService } from '@ngx-translate/core'; + +@Pipe({ + name: 'localizedDate', + pure: false + }) +export class LocalizedDatePipe implements PipeTransform { + constructor(private translateService: TranslateService) {} + + transform(value: any, pattern: string = 'mediumDate'): any { + const datePipe: DatePipe = new DatePipe(this.translateService.currentLang); + return datePipe.transform(value, pattern); + } +} \ No newline at end of file diff --git a/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts b/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts index 8e084ec3d..f41924060 100644 --- a/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts +++ b/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts @@ -1,5 +1,6 @@ import { ModuleWithProviders, NgModule } from "@angular/core"; import { HumanizePipe } from "./HumanizePipe"; +import { LocalizedDatePipe } from "./LocalizedDate"; import { ThousandShortPipe } from "./ThousandShortPipe"; import { SafePipe } from "./SafePipe"; import { QualityPipe } from "./QualityPipe"; @@ -7,8 +8,8 @@ import { UserLocalePipe } from "./UserLocalePipe"; @NgModule({ imports: [], - declarations: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, UserLocalePipe], - exports: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, UserLocalePipe], + declarations: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, UserLocalePipe, LocalizedDatePipe ], + exports: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, UserLocalePipe, LocalizedDatePipe ], }) export class PipeModule { diff --git a/src/Ombi/ClientApp/src/app/settings/about/update-dialog.component.html b/src/Ombi/ClientApp/src/app/settings/about/update-dialog.component.html index 77b053e0a..2327f2834 100644 --- a/src/Ombi/ClientApp/src/app/settings/about/update-dialog.component.html +++ b/src/Ombi/ClientApp/src/app/settings/about/update-dialog.component.html @@ -18,7 +18,7 @@
-Updated at {{data.updateDate | date}} +Updated at {{data.updateDate | localizedDate}} From 1095d524962648a1e427f0bcd8105fa734dd5b60 Mon Sep 17 00:00:00 2001 From: Jamie Date: Tue, 19 Oct 2021 10:47:47 +0100 Subject: [PATCH 43/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20en.json=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/fr.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/Ombi/wwwroot/translations/fr.json b/src/Ombi/wwwroot/translations/fr.json index 2d3bbb8a3..e751e1272 100644 --- a/src/Ombi/wwwroot/translations/fr.json +++ b/src/Ombi/wwwroot/translations/fr.json @@ -90,7 +90,7 @@ "TvTab": "Séries", "MusicTab": "Musique", "AdvancedSearch": "Vous pouvez remplir l'un des éléments ci-dessous pour découvrir de nouveaux médias. Tous les résultats sont triés par popularité", - "AdvancedSearchHeader": "Advanced Search", + "AdvancedSearchHeader": "Recherche avancée", "Suggestions": "Suggestions", "NoResults": "Désolé, nous n'avons trouvé aucun résultat !", "DigitalDate": "Sortie numérique: {{date}}", @@ -125,9 +125,9 @@ "Season": "Saison {{seasonNumber}}", "SelectAllInSeason": "Tout sélectionner dans la saison {{seasonNumber}}" }, - "AdvancedSearchInstructions": "Please choose what type of media you are searching for:", - "YearOfRelease": "Year of Release", - "KeywordSearchingDisclaimer": "Please note that Keyword Searching is very hit and miss due to the inconsistent data in TheMovieDb" + "AdvancedSearchInstructions": "Veuillez choisir le type de média que vous recherchez :", + "YearOfRelease": "Année de sortie", + "KeywordSearchingDisclaimer": "Veuillez noter que la recherche de mots-clés n'est pas très fiable en raison de données incohérentes dans TheMovieDb" }, "Requests": { "Title": "Demandes", @@ -218,7 +218,7 @@ "DescriptionPlaceholder": "Veuillez décrire le problème rencontré", "TitlePlaceholder": "Titre court de votre problème", "SelectCategory": "Sélectionner une catégorie", - "IssueCreated": "Votre rapport d'erreur a été créée" + "IssueCreated": "Votre rapport d'erreur a été créé" }, "Outstanding": "Des rapports d'erreurs sont en attente", "ResolvedDate": "Date de résolution", @@ -236,8 +236,8 @@ "FilterHeaderRequestStatus": "Statut", "Approved": "Validée", "PendingApproval": "En attente de validation", - "WatchProviders": "Watch Providers", - "Keywords": "Keywords" + "WatchProviders": "Fournisseurs de contenu", + "Keywords": "Mots-clés" }, "UserManagment": { "TvRemaining": "TV : {{remaining}}/{{total}} restant(s)", From 5ac0aa34e5f0a039792b5b57d9973dc87dbee1a6 Mon Sep 17 00:00:00 2001 From: Florian Dupret <34862846+sephrat@users.noreply.github.com> Date: Tue, 19 Oct 2021 11:55:36 +0200 Subject: [PATCH 44/81] Localize episode request popup --- .../shared/episode-request/episode-request.component.html | 4 ++-- .../shared/episode-request/episode-request.component.ts | 8 +++++--- src/Ombi/wwwroot/translations/en.json | 7 +++++-- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/src/Ombi/ClientApp/src/app/shared/episode-request/episode-request.component.html b/src/Ombi/ClientApp/src/app/shared/episode-request/episode-request.component.html index 9c97c73f1..7b31832ea 100644 --- a/src/Ombi/ClientApp/src/app/shared/episode-request/episode-request.component.html +++ b/src/Ombi/ClientApp/src/app/shared/episode-request/episode-request.component.html @@ -20,8 +20,8 @@ - Season {{season.seasonNumber}} - Season {{season.seasonNumber}} + {{ 'MediaDetails.EpisodeSelector.SeasonNumber' | translate: { number: season.seasonNumber } }} + {{ 'MediaDetails.EpisodeSelector.SeasonNumber' | translate: { number: season.seasonNumber } }} diff --git a/src/Ombi/ClientApp/src/app/shared/episode-request/episode-request.component.ts b/src/Ombi/ClientApp/src/app/shared/episode-request/episode-request.component.ts index 146f31269..4f02a74b4 100644 --- a/src/Ombi/ClientApp/src/app/shared/episode-request/episode-request.component.ts +++ b/src/Ombi/ClientApp/src/app/shared/episode-request/episode-request.component.ts @@ -3,6 +3,7 @@ import { MatCheckboxChange } from "@angular/material/checkbox"; import { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from "@angular/material/dialog"; import { ISearchTvResultV2 } from "../../interfaces/ISearchTvResultV2"; import { MessageService } from "../../services"; +import { TranslateService } from "@ngx-translate/core"; import { ISeasonsViewModel, IEpisodesRequests, INewSeasonRequests, ITvRequestViewModelV2, IRequestEngineResult, RequestType } from "../../interfaces"; import { RequestServiceV2 } from "../../services/requestV2.service"; import { AdminRequestDialogComponent } from "../admin-request-dialog/admin-request-dialog.component"; @@ -23,7 +24,8 @@ export class EpisodeRequestComponent { } constructor(public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data: EpisodeRequestData, - private requestService: RequestServiceV2, private notificationService: MessageService, private dialog: MatDialog) { } + private requestService: RequestServiceV2, private notificationService: MessageService, private dialog: MatDialog, + private translate: TranslateService) { } public async submitRequests() { @@ -35,7 +37,7 @@ export class EpisodeRequestComponent { }); if (!selected && !this.data.series.requestAll && !this.data.series.firstSeason && !this.data.series.latestSeason) { - this.notificationService.send("You need to select some episodes!", "OK"); + this.notificationService.send(this.translate.instant("Requests.NeedToSelectEpisodes"), "OK"); return; } @@ -123,7 +125,7 @@ export class EpisodeRequestComponent { private postRequest(requestResult: IRequestEngineResult) { if (requestResult.result) { this.notificationService.send( - `Request for ${this.data.series.title} has been added successfully`); + this.translate.instant("Requests.RequestAddedSuccessfully", { title: this.data.series.title })); this.data.series.seasonRequests.forEach((season) => { season.episodes.forEach((ep) => { diff --git a/src/Ombi/wwwroot/translations/en.json b/src/Ombi/wwwroot/translations/en.json index 3eecf5a26..e27d1564d 100644 --- a/src/Ombi/wwwroot/translations/en.json +++ b/src/Ombi/wwwroot/translations/en.json @@ -194,7 +194,9 @@ "ChangeAvailability":"Mark Available", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Issues", @@ -305,7 +307,8 @@ "AllSeasonsTooltip": "This will request every season for this show", "FirstSeasonTooltip": "This will only request the First Season for this show", "LatestSeasonTooltip": "This will only request the Latest Season for this show", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", From 52eda6ab917a73842bc02b0d8e0c442e564ca8f0 Mon Sep 17 00:00:00 2001 From: Jamie Date: Tue, 19 Oct 2021 11:45:14 +0100 Subject: [PATCH 45/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20en.json=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/fr.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Ombi/wwwroot/translations/fr.json b/src/Ombi/wwwroot/translations/fr.json index e751e1272..3596c65fb 100644 --- a/src/Ombi/wwwroot/translations/fr.json +++ b/src/Ombi/wwwroot/translations/fr.json @@ -163,7 +163,7 @@ "ReportIssue": "Signaler un problème", "Filter": "Filtre", "Sort": "Trier", - "SeasonNumberHeading": "Saison: {seasonNumber}", + "SeasonNumberHeading": "Saison : {seasonNumber}", "SortTitleAsc": "Titre ▲", "SortTitleDesc": "Titre ▼", "SortRequestDateAsc": "Date de la demande ▲", From 218f5d8716ebc80afb3392d8aede2584efd3174b Mon Sep 17 00:00:00 2001 From: Florian Dupret <34862846+sephrat@users.noreply.github.com> Date: Tue, 19 Oct 2021 13:13:41 +0200 Subject: [PATCH 46/81] Localize collections and movie requests/popups --- .../components/card/discover-card.component.ts | 4 ++-- .../discover-collections.component.html | 3 +-- .../discover-collections.component.ts | 6 ++++-- .../components/movie/movie-details.component.ts | 16 +++++++++------- .../shared/deny-dialog/deny-dialog.component.ts | 6 ++++-- src/Ombi/wwwroot/translations/en.json | 7 +++++++ 6 files changed, 27 insertions(+), 15 deletions(-) diff --git a/src/Ombi/ClientApp/src/app/discover/components/card/discover-card.component.ts b/src/Ombi/ClientApp/src/app/discover/components/card/discover-card.component.ts index a39e92858..0907404a8 100644 --- a/src/Ombi/ClientApp/src/app/discover/components/card/discover-card.component.ts +++ b/src/Ombi/ClientApp/src/app/discover/components/card/discover-card.component.ts @@ -130,7 +130,7 @@ export class DiscoverCardComponent implements OnInit { rootFolderOverride: result.radarrFolderId, }).subscribe(x => { if (x.result) { this.result.requested = true; - this.messageService.send(x.message, "Ok"); + this.messageService.send(this.translate.instant("Requests.RequestAddedSuccessfully", { title: this.result.title }), "Ok"); } else { this.messageService.send(x.errorMessage, "Ok"); } @@ -141,7 +141,7 @@ export class DiscoverCardComponent implements OnInit { this.requestService.requestMovie({ theMovieDbId: +this.result.id, languageCode: null, requestOnBehalf: null, qualityPathOverride: null, rootFolderOverride: null }).subscribe(x => { if (x.result) { this.result.requested = true; - this.messageService.send(x.message, "Ok"); + this.messageService.send(this.translate.instant("Requests.RequestAddedSuccessfully", { title: this.result.title }), "Ok"); } else { this.messageService.send(x.errorMessage, "Ok"); } diff --git a/src/Ombi/ClientApp/src/app/discover/components/collections/discover-collections.component.html b/src/Ombi/ClientApp/src/app/discover/components/collections/discover-collections.component.html index 6c892fae6..23a7791f0 100644 --- a/src/Ombi/ClientApp/src/app/discover/components/collections/discover-collections.component.html +++ b/src/Ombi/ClientApp/src/app/discover/components/collections/discover-collections.component.html @@ -7,8 +7,7 @@

{{collection.overview}}

- +
{{ 'Requests.RequestDate' | translate }} {{request.requestedDate | amLocal - | amDateFormat: 'LL'}}
+ | amUserLocale | amDateFormat: 'LL'}}

diff --git a/src/Ombi/ClientApp/src/app/requests/tvrequests.component.html b/src/Ombi/ClientApp/src/app/requests/tvrequests.component.html index 5834e3a23..f1bf5b2f1 100644 --- a/src/Ombi/ClientApp/src/app/requests/tvrequests.component.html +++ b/src/Ombi/ClientApp/src/app/requests/tvrequests.component.html @@ -22,7 +22,7 @@ -
Release Date: {{node.releaseDate | amLocal | amDateFormat: 'LL'}}
+
Release Date: {{node.releaseDate | amLocal | amUserLocale | amDateFormat: 'LL'}}
{{ 'Requests.QualityOverride' | translate }} {{node.qualityOverrideTitle}} diff --git a/src/Ombi/ClientApp/src/app/search/moviesearch.component.html b/src/Ombi/ClientApp/src/app/search/moviesearch.component.html index f6a27677f..77702a6d5 100644 --- a/src/Ombi/ClientApp/src/app/search/moviesearch.component.html +++ b/src/Ombi/ClientApp/src/app/search/moviesearch.component.html @@ -103,7 +103,7 @@ amDateFormat: 'LL'} }} {{ 'Search.DigitalDate' | translate: {date: result.digitalReleaseDate | - amLocal | amDateFormat: 'LL'} }} + amLocal | amUserLocale | amDateFormat: 'LL'} }} From abf0ddf74a9ad5f10951732b2aec160ed942a46c Mon Sep 17 00:00:00 2001 From: Florian Dupret <34862846+sephrat@users.noreply.github.com> Date: Tue, 19 Oct 2021 13:49:27 +0200 Subject: [PATCH 48/81] Refactor status translation into a dedicated pipe --- .../movie-information-panel.component.html | 2 +- .../movie-information-panel.component.ts | 14 +------------- .../tv-information-panel.component.html | 2 +- .../tv-information-panel.component.ts | 14 +------------- .../src/app/pipes/TranslateStatus.ts | 19 +++++++++++++++++++ .../ClientApp/src/app/pipes/pipe.module.ts | 5 +++-- .../movies-grid/movies-grid.component.html | 2 +- .../components/tv-grid/tv-grid.component.html | 2 +- 8 files changed, 28 insertions(+), 32 deletions(-) create mode 100644 src/Ombi/ClientApp/src/app/pipes/TranslateStatus.ts diff --git a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html index 480e19ddd..50070e47e 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html @@ -27,7 +27,7 @@
{{'MediaDetails.Status' | translate }} - {{ getMovieStatusLabel()}} + {{ this.movie.status | translateStatus }}
{{'MediaDetails.Availability' | translate }} diff --git a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.ts b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.ts index 174f692de..c11a0f61c 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.ts +++ b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.ts @@ -1,5 +1,4 @@ import { Component, ViewEncapsulation, Input, OnInit, Inject } from "@angular/core"; -import { TranslateService } from "@ngx-translate/core"; import { ISearchMovieResultV2 } from "../../../../interfaces/ISearchMovieResultV2"; import { IMovieRequests } from "../../../../interfaces"; import { SearchV2Service } from "../../../../services/searchV2.service"; @@ -14,8 +13,7 @@ import { IStreamingData } from "../../../../interfaces/IStreams"; }) export class MovieInformationPanelComponent implements OnInit { - constructor(private searchService: SearchV2Service, @Inject(APP_BASE_HREF) public internalBaseUrl: string, - private translate: TranslateService) { } + constructor(private searchService: SearchV2Service, @Inject(APP_BASE_HREF) public internalBaseUrl: string) { } @Input() public movie: ISearchMovieResultV2; @Input() public request: IMovieRequests; @@ -35,14 +33,4 @@ export class MovieInformationPanelComponent implements OnInit { this.searchService.getMovieStreams(this.movie.id).subscribe(x => this.streams = x); } - - public getMovieStatusLabel() { - const textKey = 'MediaDetails.StatusValues.' + this.movie.status; - const text = this.translate.instant(textKey); - if (text !== textKey) { - return text; - } else { - return this.movie.status; - } - } } diff --git a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html index ddf6fd44c..8fc23d39f 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html @@ -22,7 +22,7 @@
{{'MediaDetails.Status' | translate }} - {{ getTVStatusLabel()}} + {{ this.tv.status | translateStatus }}
{{'MediaDetails.FirstAired' | translate }} {{tv.firstAired | localizedDate: 'mediumDate'}} diff --git a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.ts b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.ts index 46175847f..1ee844967 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.ts +++ b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.ts @@ -1,6 +1,5 @@ import { APP_BASE_HREF } from "@angular/common"; import { Component, ViewEncapsulation, Input, OnInit, Inject } from "@angular/core"; -import { TranslateService } from "@ngx-translate/core"; import { ITvRequests } from "../../../../../interfaces"; import { ITvRatings } from "../../../../../interfaces/IRatings"; import { ISearchTvResultV2 } from "../../../../../interfaces/ISearchTvResultV2"; @@ -15,8 +14,7 @@ import { SearchV2Service } from "../../../../../services"; }) export class TvInformationPanelComponent implements OnInit { - constructor(private searchService: SearchV2Service, @Inject(APP_BASE_HREF) public internalBaseUrl: string, - private translate: TranslateService) { } + constructor(private searchService: SearchV2Service, @Inject(APP_BASE_HREF) public internalBaseUrl: string) { } @Input() public tv: ISearchTvResultV2; @Input() public request: ITvRequests; @@ -46,14 +44,4 @@ export class TvInformationPanelComponent implements OnInit { public sortBy(prop: string) { return this.streams.sort((a, b) => a[prop] > b[prop] ? 1 : a[prop] === b[prop] ? 0 : -1); } - - public getTVStatusLabel() { - const textKey = 'MediaDetails.StatusValues.' + this.tv.status; - const text = this.translate.instant(textKey); - if (text !== textKey) { - return text; - } else { - return this.tv.status; - } - } } diff --git a/src/Ombi/ClientApp/src/app/pipes/TranslateStatus.ts b/src/Ombi/ClientApp/src/app/pipes/TranslateStatus.ts new file mode 100644 index 000000000..1d7ebf1bd --- /dev/null +++ b/src/Ombi/ClientApp/src/app/pipes/TranslateStatus.ts @@ -0,0 +1,19 @@ +import { Pipe, PipeTransform } from '@angular/core'; +import { TranslateService } from '@ngx-translate/core'; + +@Pipe({ + name: 'translateStatus' + }) +export class TranslateStatusPipe implements PipeTransform { + constructor(private translateService: TranslateService) {} + + transform(value: string): string { + const textKey = 'MediaDetails.StatusValues.' + value; + const text = this.translateService.instant(textKey); + if (text !== textKey) { + return text; + } else { + return value; + } + } +} \ No newline at end of file diff --git a/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts b/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts index f41924060..7a9520af8 100644 --- a/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts +++ b/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts @@ -1,6 +1,7 @@ import { ModuleWithProviders, NgModule } from "@angular/core"; import { HumanizePipe } from "./HumanizePipe"; import { LocalizedDatePipe } from "./LocalizedDate"; +import { TranslateStatusPipe } from "./TranslateStatus"; import { ThousandShortPipe } from "./ThousandShortPipe"; import { SafePipe } from "./SafePipe"; import { QualityPipe } from "./QualityPipe"; @@ -8,8 +9,8 @@ import { UserLocalePipe } from "./UserLocalePipe"; @NgModule({ imports: [], - declarations: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, UserLocalePipe, LocalizedDatePipe ], - exports: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, UserLocalePipe, LocalizedDatePipe ], + declarations: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, UserLocalePipe, LocalizedDatePipe, TranslateStatusPipe ], + exports: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, UserLocalePipe, LocalizedDatePipe, TranslateStatusPipe ], }) export class PipeModule { diff --git a/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.html b/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.html index 0d397b778..0e6e31521 100644 --- a/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.html +++ b/src/Ombi/ClientApp/src/app/requests-list/components/movies-grid/movies-grid.component.html @@ -63,7 +63,7 @@ {{ 'Requests.Status' | translate}} - {{element.status}} + {{element.status |translateStatus }} diff --git a/src/Ombi/ClientApp/src/app/requests-list/components/tv-grid/tv-grid.component.html b/src/Ombi/ClientApp/src/app/requests-list/components/tv-grid/tv-grid.component.html index 4fda46b6c..8cb00d3bb 100644 --- a/src/Ombi/ClientApp/src/app/requests-list/components/tv-grid/tv-grid.component.html +++ b/src/Ombi/ClientApp/src/app/requests-list/components/tv-grid/tv-grid.component.html @@ -56,7 +56,7 @@ {{'Requests.Status' | translate}} - {{element.parentRequest.status}} + {{element.parentRequest.status | translateStatus }} From 907ce4be0fb41227e1769b0a7ad2e1280f27d12a Mon Sep 17 00:00:00 2001 From: Florian Dupret <34862846+sephrat@users.noreply.github.com> Date: Tue, 19 Oct 2021 15:51:45 +0200 Subject: [PATCH 49/81] Refactor localized dates into angular moment --- src/Ombi/ClientApp/src/app/app.module.ts | 33 ------------------- .../details-group.component.html | 2 +- .../movie-information-panel.component.html | 6 ++-- .../tv-information-panel.component.html | 2 +- .../ClientApp/src/app/pipes/LocalizedDate.ts | 16 --------- .../ClientApp/src/app/pipes/pipe.module.ts | 5 ++- .../about/update-dialog.component.html | 2 +- 7 files changed, 8 insertions(+), 58 deletions(-) delete mode 100644 src/Ombi/ClientApp/src/app/pipes/LocalizedDate.ts diff --git a/src/Ombi/ClientApp/src/app/app.module.ts b/src/Ombi/ClientApp/src/app/app.module.ts index d22edbfbc..b4e78087c 100644 --- a/src/Ombi/ClientApp/src/app/app.module.ts +++ b/src/Ombi/ClientApp/src/app/app.module.ts @@ -66,39 +66,6 @@ import { TranslateHttpLoader } from "@ngx-translate/http-loader"; import { UnauthorizedInterceptor } from "./auth/unauthorized.interceptor"; import { environment } from "../environments/environment"; -import { registerLocaleData } from '@angular/common'; -// TODO: lazy load locales, probably somewhere in app.component -import localeDa from '@angular/common/locales/da'; -import localeDe from '@angular/common/locales/de'; -import localeEs from '@angular/common/locales/es'; -import localeFr from '@angular/common/locales/fr'; -import localeIt from '@angular/common/locales/it'; -import localeHu from '@angular/common/locales/hu'; -import localeNl from '@angular/common/locales/nl'; -// import localeNo from '@angular/common/locales/no'; -import localePl from '@angular/common/locales/pl'; -import localePt from '@angular/common/locales/pt'; -import localeSk from '@angular/common/locales/sk'; -import localeSv from '@angular/common/locales/sv'; -import localeBg from '@angular/common/locales/bg'; -import localeRu from '@angular/common/locales/ru'; - - -registerLocaleData(localeDa); -registerLocaleData(localeDe); -registerLocaleData(localeEs); -registerLocaleData(localeFr); -registerLocaleData(localeIt); -registerLocaleData(localeHu); -registerLocaleData(localeNl); -// registerLocaleData(localeNo); -registerLocaleData(localePl); -registerLocaleData(localePt); -registerLocaleData(localeSk); -registerLocaleData(localeSv); -registerLocaleData(localeBg); -registerLocaleData(localeRu); - const routes: Routes = [ { path: "*", component: PageNotFoundComponent }, { path: "", redirectTo: "/discover", pathMatch: "full" }, diff --git a/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html b/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html index 46a77d575..315cb86ae 100644 --- a/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html +++ b/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html @@ -1,7 +1,7 @@ {{issue.subject}} - {{issue.userReported?.userName}} on {{issue.createdDate | localizedDate:short}} + {{issue.userReported?.userName}} on {{issue.createdDate | amLocal | amUserLocale | amDateFormat: 'LL' }}

diff --git a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html index 50070e47e..6970c913d 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html @@ -50,7 +50,7 @@

{{'MediaDetails.RequestDate' | translate }} - {{request.requestedDate | localizedDate}} + {{request.requestedDate | amUserLocale | amDateFormat: 'LL'}}
@@ -78,11 +78,11 @@
{{'MediaDetails.TheatricalRelease' | translate }} - {{movie.releaseDate | localizedDate: 'mediumDate'}} + {{movie.releaseDate | amUserLocale | amDateFormat: 'LL': 'mediumDate'}}
{{'MediaDetails.DigitalRelease' | translate }} - {{movie.digitalReleaseDate | localizedDate: 'mediumDate'}} + {{movie.digitalReleaseDate | amUserLocale | amDateFormat: 'LL': 'mediumDate'}}
diff --git a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html index 8fc23d39f..dcdf6fe8e 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html @@ -25,7 +25,7 @@ {{ this.tv.status | translateStatus }}
{{'MediaDetails.FirstAired' | translate }} - {{tv.firstAired | localizedDate: 'mediumDate'}} + {{tv.firstAired | amLocal | amUserLocale | amDateFormat: 'LL' }}
diff --git a/src/Ombi/ClientApp/src/app/pipes/LocalizedDate.ts b/src/Ombi/ClientApp/src/app/pipes/LocalizedDate.ts deleted file mode 100644 index ab71fa36d..000000000 --- a/src/Ombi/ClientApp/src/app/pipes/LocalizedDate.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { DatePipe } from '@angular/common'; -import { Pipe, PipeTransform } from '@angular/core'; -import { TranslateService } from '@ngx-translate/core'; - -@Pipe({ - name: 'localizedDate', - pure: false - }) -export class LocalizedDatePipe implements PipeTransform { - constructor(private translateService: TranslateService) {} - - transform(value: any, pattern: string = 'mediumDate'): any { - const datePipe: DatePipe = new DatePipe(this.translateService.currentLang); - return datePipe.transform(value, pattern); - } -} \ No newline at end of file diff --git a/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts b/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts index 7a9520af8..6f063c91c 100644 --- a/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts +++ b/src/Ombi/ClientApp/src/app/pipes/pipe.module.ts @@ -1,6 +1,5 @@ import { ModuleWithProviders, NgModule } from "@angular/core"; import { HumanizePipe } from "./HumanizePipe"; -import { LocalizedDatePipe } from "./LocalizedDate"; import { TranslateStatusPipe } from "./TranslateStatus"; import { ThousandShortPipe } from "./ThousandShortPipe"; import { SafePipe } from "./SafePipe"; @@ -9,8 +8,8 @@ import { UserLocalePipe } from "./UserLocalePipe"; @NgModule({ imports: [], - declarations: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, UserLocalePipe, LocalizedDatePipe, TranslateStatusPipe ], - exports: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, UserLocalePipe, LocalizedDatePipe, TranslateStatusPipe ], + declarations: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, UserLocalePipe, TranslateStatusPipe ], + exports: [HumanizePipe, ThousandShortPipe, SafePipe, QualityPipe, UserLocalePipe, TranslateStatusPipe ], }) export class PipeModule { diff --git a/src/Ombi/ClientApp/src/app/settings/about/update-dialog.component.html b/src/Ombi/ClientApp/src/app/settings/about/update-dialog.component.html index 2327f2834..5377c463f 100644 --- a/src/Ombi/ClientApp/src/app/settings/about/update-dialog.component.html +++ b/src/Ombi/ClientApp/src/app/settings/about/update-dialog.component.html @@ -18,7 +18,7 @@
-Updated at {{data.updateDate | localizedDate}} +Updated at {{data.updateDate | amUserLocale | amDateFormat: 'LL' }} From 4f6cc120bb31acab6f4eec38d33b46ee29e938b9 Mon Sep 17 00:00:00 2001 From: Florian Dupret <34862846+sephrat@users.noreply.github.com> Date: Tue, 19 Oct 2021 15:52:13 +0200 Subject: [PATCH 50/81] Fix pipes not available in DetailsGroupComponent --- src/Ombi/ClientApp/src/app/shared/shared.module.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Ombi/ClientApp/src/app/shared/shared.module.ts b/src/Ombi/ClientApp/src/app/shared/shared.module.ts index 50dfc4538..01d70f1c6 100644 --- a/src/Ombi/ClientApp/src/app/shared/shared.module.ts +++ b/src/Ombi/ClientApp/src/app/shared/shared.module.ts @@ -38,6 +38,7 @@ import { MatTreeModule } from '@angular/material/tree'; import { MomentModule } from "ngx-moment"; import { NgModule } from "@angular/core"; import { SidebarModule } from "primeng/sidebar"; +import { PipeModule } from "../pipes/pipe.module"; import { TheMovieDbService } from "../services"; import { TranslateModule } from "@ngx-translate/core"; import { TruncateModule } from "@yellowspot/ng-truncate"; @@ -87,6 +88,7 @@ import { WatchProvidersSelectComponent } from "./components/watch-providers-sele MatTreeModule, MatStepperModule, MatSnackBarModule, + PipeModule, ], exports: [ TranslateModule, From 8106097ea3a4140d4925cb73909056883d547c63 Mon Sep 17 00:00:00 2001 From: Florian Dupret <34862846+sephrat@users.noreply.github.com> Date: Tue, 19 Oct 2021 16:03:16 +0200 Subject: [PATCH 51/81] Translate Issue details group --- .../components/details-group/details-group.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html b/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html index 315cb86ae..01ddaf75e 100644 --- a/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html +++ b/src/Ombi/ClientApp/src/app/issues/components/details-group/details-group.component.html @@ -1,7 +1,7 @@ {{issue.subject}} - {{issue.userReported?.userName}} on {{issue.createdDate | amLocal | amUserLocale | amDateFormat: 'LL' }} + {{'Issues.UserOnDate' | translate: { user: issue.userReported?.userName, date: issue.createdDate | amLocal | amUserLocale | amDateFormat: 'LL' } }}

From 496b399d67808c9880f70d2d442aaf82b2bdf16b Mon Sep 17 00:00:00 2001 From: Florian Dupret <34862846+sephrat@users.noreply.github.com> Date: Tue, 19 Oct 2021 16:15:58 +0200 Subject: [PATCH 52/81] Fix minor regressions --- .../movie/panels/movie-information-panel.component.html | 4 ++-- .../tv-information-panel/tv-information-panel.component.html | 2 +- src/Ombi/wwwroot/translations/en.json | 3 ++- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html index 6970c913d..1aafc30bf 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/movie/panels/movie-information-panel.component.html @@ -27,7 +27,7 @@


{{'MediaDetails.Status' | translate }} - {{ this.movie.status | translateStatus }} + {{ this.movie.status | translateStatus }}
{{'MediaDetails.Availability' | translate }} @@ -45,7 +45,7 @@
{{'MediaDetails.RequestedBy' | translate }} - {{request.requestedUser.userAlias}} + {{request.requestedUser.userAlias}}
diff --git a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html index dcdf6fe8e..9d1d927bd 100644 --- a/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html +++ b/src/Ombi/ClientApp/src/app/media-details/components/tv/panels/tv-information-panel/tv-information-panel.component.html @@ -22,7 +22,7 @@
{{'MediaDetails.Status' | translate }} - {{ this.tv.status | translateStatus }} + {{ tv.status | translateStatus }}
{{'MediaDetails.FirstAired' | translate }} {{tv.firstAired | amLocal | amUserLocale | amDateFormat: 'LL' }} diff --git a/src/Ombi/wwwroot/translations/en.json b/src/Ombi/wwwroot/translations/en.json index 643f00d37..791ec3285 100644 --- a/src/Ombi/wwwroot/translations/en.json +++ b/src/Ombi/wwwroot/translations/en.json @@ -239,7 +239,8 @@ "Delete": "Delete issue", "DeletedIssue": "Issue has been deleted", "Chat":"Chat", - "Requested":"Requested" + "Requested":"Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Clear Filter", From f72b47a3fb2493e86375c225a6d2debf0d01abaa Mon Sep 17 00:00:00 2001 From: Jamie Date: Tue, 19 Oct 2021 16:07:41 +0100 Subject: [PATCH 53/81] chore: updated crowdin config [skip ci] --- crowdin.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crowdin.yml b/crowdin.yml index 67f8e4368..84db0b7c0 100644 --- a/crowdin.yml +++ b/crowdin.yml @@ -1,5 +1,5 @@ -commit_message: "fix(translations): 🌐 New translations %original_file_name% from Crowdin [skip ci]" +commit_message: "fix(translations): 🌐 New translations %two_letters_code% from Crowdin [skip ci]" append_commit_message: false pull_request_title: "🌐 Translations Update" pull_request_labels: From 21dba4c524b98b9f2b883d97e7e13329425a8762 Mon Sep 17 00:00:00 2001 From: tidusjar Date: Wed, 20 Oct 2021 11:59:10 +0100 Subject: [PATCH 54/81] fix(newsletter): :bug: Fixed a few small bugs in the newsletter Fixed an issue where if you only had external users, it wouldn't send. Fixed another issue where it didn't cater for potential duplicate email addresses --- .../NewsletterUnsubscribeTests.cs | 2 ++ src/Ombi.Schedule/Jobs/Ombi/NewsletterJob.cs | 31 ++++++++++--------- src/Ombi/.vscode/settings.json | 3 +- 3 files changed, 20 insertions(+), 16 deletions(-) diff --git a/src/Ombi.Schedule.Tests/NewsletterUnsubscribeTests.cs b/src/Ombi.Schedule.Tests/NewsletterUnsubscribeTests.cs index 0fc961058..0ed9cf163 100644 --- a/src/Ombi.Schedule.Tests/NewsletterUnsubscribeTests.cs +++ b/src/Ombi.Schedule.Tests/NewsletterUnsubscribeTests.cs @@ -29,6 +29,8 @@ namespace Ombi.Schedule.Tests yield return new TestCaseData("https://google.com:3577/", "1").Returns("https://google.com:3577/unsubscribe/1").SetName("Port With Slash"); yield return new TestCaseData("", "1").Returns(string.Empty).SetName("Missing App URL empty"); yield return new TestCaseData(null, "1").Returns(string.Empty).SetName("Missing App URL null"); + yield return new TestCaseData("hty", string.Empty).Returns(string.Empty).SetName("Missing ID empty"); + yield return new TestCaseData("hty", null).Returns(string.Empty).SetName("Missing ID null"); } } } diff --git a/src/Ombi.Schedule/Jobs/Ombi/NewsletterJob.cs b/src/Ombi.Schedule/Jobs/Ombi/NewsletterJob.cs index 0088e00fd..cd24cda8b 100644 --- a/src/Ombi.Schedule/Jobs/Ombi/NewsletterJob.cs +++ b/src/Ombi.Schedule/Jobs/Ombi/NewsletterJob.cs @@ -208,13 +208,7 @@ namespace Ombi.Schedule.Jobs.Ombi if (!test) { - // Get the users to send it to - var users = await _userManager.GetUsersInRoleAsync(OmbiRoles.ReceivesNewsletter); - if (!users.Any()) - { - return; - } - + var users = new List(); foreach (var emails in settings.ExternalEmails) { users.Add(new OmbiUser @@ -224,11 +218,23 @@ namespace Ombi.Schedule.Jobs.Ombi }); } + // Get the users to send it to + users.AddRange(await _userManager.GetUsersInRoleAsync(OmbiRoles.ReceivesNewsletter)); + if (!users.Any()) + { + return; + } + var messageContent = ParseTemplate(template, customization); var email = new NewsletterTemplate(); - foreach (var user in users) - { + foreach (var user in users.DistinctBy(x => x.Email)) + { // Get the users to send it to + if (user.Email.IsNullOrEmpty()) + { + continue; + } + var url = GenerateUnsubscribeLink(customization.ApplicationUrl, user.Id); var html = email.LoadTemplate(messageContent.Subject, messageContent.Message, body, customization.Logo, url); @@ -243,11 +249,6 @@ namespace Ombi.Schedule.Jobs.Ombi Subject = messageContent.Subject }; - // Get the users to send it to - if (user.Email.IsNullOrEmpty()) - { - continue; - } // Send the message to the user message.To.Add(new MailboxAddress(user.Email.Trim(), user.Email.Trim())); @@ -391,7 +392,7 @@ namespace Ombi.Schedule.Jobs.Ombi public static string GenerateUnsubscribeLink(string applicationUrl, string id) { - if (!applicationUrl.HasValue()) + if (!applicationUrl.HasValue() || !id.HasValue()) { return string.Empty; } diff --git a/src/Ombi/.vscode/settings.json b/src/Ombi/.vscode/settings.json index f7b75c335..89d2dbd93 100644 --- a/src/Ombi/.vscode/settings.json +++ b/src/Ombi/.vscode/settings.json @@ -16,6 +16,7 @@ "request-limits", "notifications", "settings", - "user-management" + "user-management", + "newsletter" ] } From 9191e558925a327063313a1dab59ddbfc7ef8d3f Mon Sep 17 00:00:00 2001 From: Florian Dupret <34862846+sephrat@users.noreply.github.com> Date: Wed, 20 Oct 2021 13:57:20 +0200 Subject: [PATCH 55/81] Localize user preferences --- .../user-preference.component.html | 30 +++++++++++-------- .../user-preference.component.ts | 2 +- src/Ombi/wwwroot/translations/en.json | 21 ++++++++++++- 3 files changed, 38 insertions(+), 15 deletions(-) diff --git a/src/Ombi/ClientApp/src/app/user-preferences/components/user-preference/user-preference.component.html b/src/Ombi/ClientApp/src/app/user-preferences/components/user-preference/user-preference.component.html index 7d466d972..6942eb3ad 100644 --- a/src/Ombi/ClientApp/src/app/user-preferences/components/user-preference/user-preference.component.html +++ b/src/Ombi/ClientApp/src/app/user-preferences/components/user-preference/user-preference.component.html @@ -7,15 +7,15 @@
- +
- User Type: + {{'UserPreferences.UserType' | translate}}
- {{UserType[user?.userType]}} + {{'UserTypeLabel.' + user?.userType | translate }}
@@ -58,7 +58,7 @@
Get it on Google Play + src="https://play.google.com/intl/{{ selectedLang }}/badges/static/images/badges/{{ selectedLang }}_badge_web_generic.png" />
- +
@@ -75,15 +77,15 @@
- +
-

Change Details

+

{{'UserPreferences.ChangeDetails' | translate}}

- You need your current password to make any changes here + {{'UserPreferences.NeedCurrentPassword' | translate}} - Current Password + {{'UserPreferences.CurrentPassword' | translate}}
@@ -91,7 +93,7 @@
- Email Address + {{'UserPreferences.EmailAddress' | translate}}
@@ -100,7 +102,7 @@
- New Password + {{'UserPreferences.NewPassword' | translate}}
@@ -108,12 +110,14 @@
- New Password Confirm + {{'UserPreferences.NewPasswordConfirm' | translate}}
- +
diff --git a/src/Ombi/ClientApp/src/app/user-preferences/components/user-preference/user-preference.component.ts b/src/Ombi/ClientApp/src/app/user-preferences/components/user-preference/user-preference.component.ts index afa2496cf..32ba813cc 100644 --- a/src/Ombi/ClientApp/src/app/user-preferences/components/user-preference/user-preference.component.ts +++ b/src/Ombi/ClientApp/src/app/user-preferences/components/user-preference/user-preference.component.ts @@ -133,7 +133,7 @@ export class UserPreferenceComponent implements OnInit { currentPassword: values.currentPassword }).subscribe(x => { if (x.successful) { - this.notification.success("Updated your information"); + this.notification.success(this.translate.instant("UserPreferences.UpdatedYourInformation")); this.user.emailAddress = values.emailAddress; } else { this.notification.error(x.errors[0]); diff --git a/src/Ombi/wwwroot/translations/en.json b/src/Ombi/wwwroot/translations/en.json index 791ec3285..959ddaade 100644 --- a/src/Ombi/wwwroot/translations/en.json +++ b/src/Ombi/wwwroot/translations/en.json @@ -35,6 +35,7 @@ }, "Cancel": "Cancel", "Submit": "Submit", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -361,6 +362,24 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode":"Mobile QR Code", "LegacyApp":"Launch Legacy App", - "NoQrCode":"Please contact your administrator to enable QR codes" + "NoQrCode":"Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } + } From c601e7f83f70d8109b0d31e3e3dbfc05e06585c2 Mon Sep 17 00:00:00 2001 From: Conventional Changelog Action Date: Wed, 20 Oct 2021 12:53:44 +0000 Subject: [PATCH 56/81] chore(release): :rocket: v4.2.12 --- CHANGELOG.md | 20 +++++++++++--------- version.json | 2 +- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8a3168617..781542dcd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ +## [4.2.12](https://github.com/Ombi-app/Ombi/compare/v4.2.11...v4.2.12) (2021-10-20) + + +### Bug Fixes + +* **newsletter:** :bug: Fixed a few small bugs in the newsletter ([21dba4c](https://github.com/Ombi-app/Ombi/commit/21dba4c524b98b9f2b883d97e7e13329425a8762)) +* **translations:** 🌐 New translations en.json from Crowdin [skip ci] ([52eda6a](https://github.com/Ombi-app/Ombi/commit/52eda6ab917a73842bc02b0d8e0c442e564ca8f0)) +* **translations:** 🌐 New translations en.json from Crowdin [skip ci] ([1095d52](https://github.com/Ombi-app/Ombi/commit/1095d524962648a1e427f0bcd8105fa734dd5b60)) + + + ## [4.2.11](https://github.com/Ombi-app/Ombi/compare/v4.2.10...v4.2.11) (2021-10-18) @@ -30,12 +41,3 @@ -## [4.2.7](https://github.com/Ombi-app/Ombi/compare/v4.2.6...v4.2.7) (2021-10-14) - - -### Bug Fixes - -* :bug: Fixed the issue parsing TheMovieDB dates. They have broken something... ([6e397e0](https://github.com/Ombi-app/Ombi/commit/6e397e02e95f894a92e8bf02428efdcac1275b31)) - - - diff --git a/version.json b/version.json index 3851ec1a5..eb8e279ee 100644 --- a/version.json +++ b/version.json @@ -1,3 +1,3 @@ { - "version": "4.2.11" + "version": "4.2.12" } \ No newline at end of file From 8fbd267b516ddaa80fd16c091bae532b860fbf45 Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 16:11:10 +0100 Subject: [PATCH 57/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20%two=5Fletters=5Fcode%=20from=20Crowdin=20[sk?= =?UTF-8?q?ip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/fr.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Ombi/wwwroot/translations/fr.json b/src/Ombi/wwwroot/translations/fr.json index 3596c65fb..e3950ced1 100644 --- a/src/Ombi/wwwroot/translations/fr.json +++ b/src/Ombi/wwwroot/translations/fr.json @@ -55,12 +55,12 @@ "Discover": "Découvrir", "Search": "Rechercher", "Requests": "En attente", - "UserManagement": "Gestion des utilisateurs", + "UserManagement": "Utilisateurs", "Issues": "Problèmes", "Vote": "Vote", "Donate": "Faire un don !", "DonateLibraryMaintainer": "Faire un don au mainteneur de la bibliothèque", - "DonateTooltip": "C’est pour convaincre ma femme de me laisser passer mon temps libre à développer Ombi ;)", + "DonateTooltip": "C’est pour convaincre ma femme de me laisser passer mon temps libre à développer Ombi 😁", "UpdateAvailableTooltip": "Mise à jour disponible !", "Settings": "Paramètres", "Welcome": "Bienvenue {{username}}", @@ -70,7 +70,7 @@ "RecentlyAdded": "Ajouts récents", "ChangeTheme": "Changer de thème", "Calendar": "Calendrier", - "UserPreferences": "Paramètres", + "UserPreferences": "Préférences", "FeatureSuggestion": "Suggérer une fonctionnalité", "FeatureSuggestionTooltip": "Vous avez une bonne idée ? Suggérez-la ici !", "Filter": { @@ -177,7 +177,7 @@ "NextMinutes": "Une autre demande sera ajoutée dans {{time}} minutes", "NextMinute": "Une autre demande sera ajoutée dans {{time}} minute" }, - "AllRequests": "Toutes les requêtes", + "AllRequests": "Toutes les demandes", "PendingRequests": "Requêtes en attente", "ProcessingRequests": "Requêtes en cours", "AvailableRequests": "Requêtes disponibles", From be53d7c64eb575221baef97d44be70810691600e Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 16:49:47 +0100 Subject: [PATCH 58/81] chore: updated crowdin config [skip ci] --- crowdin.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crowdin.yml b/crowdin.yml index 84db0b7c0..b7f48ef88 100644 --- a/crowdin.yml +++ b/crowdin.yml @@ -1,5 +1,5 @@ -commit_message: "fix(translations): 🌐 New translations %two_letters_code% from Crowdin [skip ci]" +commit_message: "fix(translations): 🌐 New translations from Crowdin [skip ci]" append_commit_message: false pull_request_title: "🌐 Translations Update" pull_request_labels: From 9d54543f430af419467504797b6a0f0a3b45dd9e Mon Sep 17 00:00:00 2001 From: contrib-readme-bot Date: Wed, 20 Oct 2021 15:52:58 +0000 Subject: [PATCH 59/81] chore: :busts_in_silhouette: Updated Contributors [skip ci] --- README.md | 56 +++++++++++++++++++++++++++---------------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index 0f53ec57c..5a395355c 100644 --- a/README.md +++ b/README.md @@ -178,6 +178,13 @@ Here are some of the features Ombi has: Dyson Parkes + + + sephrat +
+ Sephrat +
+ goldenpipes @@ -191,15 +198,15 @@ Here are some of the features Ombi has:
Julien Loir
- + + ProtoJazz
Jim MacKenize
- - + Unimatrix0 @@ -234,15 +241,15 @@ Here are some of the features Ombi has:
Taylor Buchanan
- + + Patricol
Patrick Collins
- - + chriscpritchard @@ -277,15 +284,15 @@ Here are some of the features Ombi has:
Mhann
- + + ombi-bot
Ombi-bot
- - + snyk-bot @@ -320,15 +327,15 @@ Here are some of the features Ombi has:
David Pooley
- + + Fredrik81
Fredrik81
- - + Aerion @@ -363,15 +370,15 @@ Here are some of the features Ombi has:
Qstick
- + + Vbgf
Vbgf
- - + sorano @@ -406,15 +413,15 @@ Here are some of the features Ombi has:
Aljosa Asanovic
- + + Ashyni
Ashyni
- - + Majawat @@ -449,15 +456,15 @@ Here are some of the features Ombi has:
Codehhh
- + + danopia
Daniel Lamando
- - + hmnd @@ -492,13 +499,6 @@ Here are some of the features Ombi has:
Fish2
- - - - sephrat -
- Sephrat -
From 704252e8858c9b2799b4efdacdee652370e0a71f Mon Sep 17 00:00:00 2001 From: Conventional Changelog Action Date: Wed, 20 Oct 2021 15:56:51 +0000 Subject: [PATCH 60/81] chore(release): :rocket: v4.2.13 --- CHANGELOG.md | 19 +++++++++---------- version.json | 2 +- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 781542dcd..8d61ef642 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,12 @@ +## [4.2.13](https://github.com/Ombi-app/Ombi/compare/v4.2.12...v4.2.13) (2021-10-20) + + +### Bug Fixes + +* **translations:** 🌐 New translations %two_letters_code% from Crowdin [skip ci] ([8fbd267](https://github.com/Ombi-app/Ombi/commit/8fbd267b516ddaa80fd16c091bae532b860fbf45)) + + + ## [4.2.12](https://github.com/Ombi-app/Ombi/compare/v4.2.11...v4.2.12) (2021-10-20) @@ -31,13 +40,3 @@ -## [4.2.8](https://github.com/Ombi-app/Ombi/compare/v4.2.7...v4.2.8) (2021-10-15) - - -### Bug Fixes - -* :adhesive_bandage: See if this fixes the proxy issue ([74d1aca](https://github.com/Ombi-app/Ombi/commit/74d1acae499707a7e21401f53eb2bb90c5bb9cfa)) -* :bug: Fixed Ombi not writing the baseUrl correctly ([e9cc8b6](https://github.com/Ombi-app/Ombi/commit/e9cc8b6fe71d3e10c1a901e70227989b3362afe3)) - - - diff --git a/version.json b/version.json index eb8e279ee..64f65d831 100644 --- a/version.json +++ b/version.json @@ -1,3 +1,3 @@ { - "version": "4.2.12" + "version": "4.2.13" } \ No newline at end of file From dadabf93e1582a0c39321fd9bf3de3fb11e3f406 Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:40:55 +0100 Subject: [PATCH 61/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/fr.json | 136 +++++++++++++++++--------- 1 file changed, 91 insertions(+), 45 deletions(-) diff --git a/src/Ombi/wwwroot/translations/fr.json b/src/Ombi/wwwroot/translations/fr.json index e3950ced1..56cba296f 100644 --- a/src/Ombi/wwwroot/translations/fr.json +++ b/src/Ombi/wwwroot/translations/fr.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Continuer", "Available": "Disponible", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Partiellement disponible", "Monitored": "Suivi", "NotAvailable": "Non disponible", @@ -33,7 +35,8 @@ }, "Cancel": "Annuler", "Submit": "Envoyer", - "tvShow": "Série TV", + "Update": "Update", + "tvShow": "Série", "movie": "Film" }, "PasswordReset": { @@ -54,7 +57,7 @@ "NavigationBar": { "Discover": "Découvrir", "Search": "Rechercher", - "Requests": "En attente", + "Requests": "Demandes", "UserManagement": "Utilisateurs", "Issues": "Problèmes", "Vote": "Vote", @@ -71,7 +74,7 @@ "ChangeTheme": "Changer de thème", "Calendar": "Calendrier", "UserPreferences": "Préférences", - "FeatureSuggestion": "Suggérer une fonctionnalité", + "FeatureSuggestion": "Suggestions", "FeatureSuggestionTooltip": "Vous avez une bonne idée ? Suggérez-la ici !", "Filter": { "Movies": "Films", @@ -93,8 +96,8 @@ "AdvancedSearchHeader": "Recherche avancée", "Suggestions": "Suggestions", "NoResults": "Désolé, nous n'avons trouvé aucun résultat !", - "DigitalDate": "Sortie numérique: {{date}}", - "TheatricalRelease": "Sortie en salle: {{date}}", + "DigitalDate": "Sortie numérique : {{date}}", + "TheatricalRelease": "Sortie en salle : {{date}}", "ViewOnPlex": "Regarder sur Plex", "ViewOnEmby": "Regarder sur Emby", "ViewOnJellyfin": "Regarder sur Jellyfin", @@ -107,7 +110,7 @@ "UpcomingMovies": "Films à venir", "TopRatedMovies": "Films les mieux notés", "NowPlayingMovies": "Films à l'affiche", - "HomePage": "Accueil", + "HomePage": "Site du film", "Trailer": "Bande-annonce" }, "TvShows": { @@ -148,8 +151,8 @@ "RequestDate": "Date de la demande", "QualityOverride": "Remplacement de la qualité :", "RootFolderOverride": "Remplacement du répertoire racine :", - "ChangeRootFolder": "Modifier le répertoire racine", - "ChangeQualityProfile": "Changer le profil de qualité", + "ChangeRootFolder": "Répertoire racine", + "ChangeQualityProfile": "Profil de qualité", "MarkUnavailable": "Marquer comme non disponible", "MarkAvailable": "Marquer comme disponible", "Remove": "Supprimer", @@ -178,21 +181,30 @@ "NextMinute": "Une autre demande sera ajoutée dans {{time}} minute" }, "AllRequests": "Toutes les demandes", - "PendingRequests": "Requêtes en attente", - "ProcessingRequests": "Requêtes en cours", - "AvailableRequests": "Requêtes disponibles", - "DeniedRequests": "Requêtes refusées", - "RequestsToDisplay": "Requêtes à afficher", + "PendingRequests": "Demandes en attente", + "ProcessingRequests": "Demandes en cours", + "AvailableRequests": "Demandes disponibles", + "DeniedRequests": "Demandes refusées", + "RequestsToDisplay": "Demandes à afficher", "RequestsTitle": "Titre", "Details": "Détails", "Options": "Options", "RequestPanel": { "Delete": "Supprimer la demande", - "Approve": "Autoriser la demande", + "Approve": "Approuver la demande", "ChangeAvailability": "Marquer comme Disponible", "Deleted": "Éléments sélectionnés supprimés avec succès", "Approved": "Éléments sélectionnés approuvés avec succès" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Problèmes", @@ -215,35 +227,36 @@ "ReportedBy": "Signalé par", "IssueDialog": { "Title": "Signaler un problème", - "DescriptionPlaceholder": "Veuillez décrire le problème rencontré", + "DescriptionPlaceholder": "Veuillez décrire le problème", "TitlePlaceholder": "Titre court de votre problème", "SelectCategory": "Sélectionner une catégorie", - "IssueCreated": "Votre rapport d'erreur a été créé" + "IssueCreated": "Votre problème a été créé" }, - "Outstanding": "Des rapports d'erreurs sont en attente", + "Outstanding": "Des problèmes ont été signalés", "ResolvedDate": "Date de résolution", "CreatedDate": "Signalé le", "MarkedAsResolved": "Ce problème a maintenant été marqué comme résolu !", "MarkedAsInProgress": "Ce problème a maintenant été marqué comme en cours de traitement !", - "Delete": "Supprimer rapport d'erreur", - "DeletedIssue": "Votre rapport d'erreur a été supprimé", + "Delete": "Supprimer le problème", + "DeletedIssue": "Problème supprimé", "Chat": "Discuter", - "Requested": "Demandé" + "Requested": "Demandé", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Effacer les filtres", "FilterHeaderAvailability": "Disponibilité", "FilterHeaderRequestStatus": "Statut", - "Approved": "Validée", - "PendingApproval": "En attente de validation", + "Approved": "Approuvée", + "PendingApproval": "En attente d'approbation", "WatchProviders": "Fournisseurs de contenu", "Keywords": "Mots-clés" }, "UserManagment": { - "TvRemaining": "TV : {{remaining}}/{{total}} restant(s)", + "TvRemaining": "Séries : {{remaining}}/{{total}} restant(s)", "MovieRemaining": "Films : {{remaining}}/{{total}} restant(s)", "MusicRemaining": "Musique : {{remaining}}/{{total}} restant(s)", - "TvDue": "TV : {{date}}", + "TvDue": "Séries : {{date}}", "MovieDue": "Film : {{date}}", "MusicDue": "Musique : {{date}}" }, @@ -253,7 +266,7 @@ }, "MediaDetails": { "Denied": "Refusé", - "RecommendationsTitle": "Suggestions", + "RecommendationsTitle": "Recommandations", "SimilarTitle": "Similaires", "VideosTitle": "Vidéos", "AlbumsTitle": "Albums", @@ -261,7 +274,7 @@ "ClearSelection": "Désélectionner", "RequestSelectedAlbums": "Demander les Albums sélectionnés", "ViewCollection": "Afficher la Collection", - "NotEnoughInfo": "Malheureusement, il n'y a pas encore assez d'informations à propos de ce média !", + "NotEnoughInfo": "Malheureusement, il n'y a pas encore assez d'informations à propos de cette série !", "AdvancedOptions": "Options Avancées", "AutoApproveOptions": "Vous pouvez configurer la demande ici. Une fois demandée, elle sera envoyée à votre application de DVR et sera automatiquement approuvée ! Veuillez noter que ceci est optionnel, appuyez simplement sur \"Demander\" pour sauter !", "AutoApproveOptionsTv": "Vous pouvez configurer la demande ici. Une fois demandée, elle sera envoyée à votre application de DVR et sera automatiquement approuvée ! Si la demande est déjà dans Sonarr, nous ne changerons pas le dossier racine ou le profil de qualité si vous la définissez ! Veuillez noter que ceci est optionnel, appuyez simplement sur \"Demander\" pour sauter !", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Sélectionner un Profil de Qualité", "RootFolderSelect": "Sélectionner un Dossier Racine", "LanguageProfileSelect": "Sélectionnez un profil de langue", - "Status": "Statut", - "Availability": "Disponibilité", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Statut de la Demande", - "Quality": "Qualité", - "RootFolderOverride": "Remplacer le Dossier Racine", - "QualityOverride": "Remplacer la Qualité", - "Genres": "Genres", - "TheatricalRelease": "Sortie en salle", - "DigitalRelease": "Sorti en Numérique", - "Votes": "Votes", - "Runtime": "Durée de visionnage", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Minutes", - "Revenue": "Recettes", - "Budget": "Coût de Production", - "Keywords": "Mots Clés / Tags", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Casting" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "Cette action demandera toutes les saisons de cette série", "FirstSeasonTooltip": "Cette action ne demandera que la Première Saison de cette série", "LatestSeasonTooltip": "Cette action ne demandera que la Dernière Saison de cette série", - "NoEpisodes": "Il n'y a malheureusement pas encore d'informations d'épisode pour cette série !" + "NoEpisodes": "Il n'y a malheureusement pas encore d'informations d'épisode pour cette série !", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Configuration Sonarr", "RadarrConfiguration": "Configuration Radarr", "RequestOnBehalf": "Demander au nom de", "PleaseSelectUser": "Veuillez sélectionner un utilisateur", - "StreamingOn": "Diffusion sur", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Refaire une demande" }, "Discovery": { @@ -308,7 +337,7 @@ "RecentlyRequestedTab": "Demandé récemment", "Movies": "Films", "Combined": "Tous", - "Tv": "TV", + "Tv": "Séries", "CardDetails": { "Availability": "Disponibilité", "Studio": "Studio", @@ -324,7 +353,7 @@ "NoSearch": "Désolé, rien ne correspond à votre recherche !" }, "UserPreferences": { - "Welcome": "Bienvenue {{username}}!", + "Welcome": "Bienvenue {{username}} !", "OmbiLanguage": "Langue", "DarkMode": "Mode Sombre", "Updated": "Mise à jour réussie", @@ -333,6 +362,23 @@ "LanguageDescription": "C'est la langue dans laquelle vous souhaitez que l'interface Ombi soit affichée.", "MobileQRCode": "QR Code mobile", "LegacyApp": "Lancer l'ancienne application", - "NoQrCode": "Veuillez contacter votre administrateur pour activer les QR codes" + "NoQrCode": "Veuillez contacter votre administrateur pour activer les QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From edb418a6f05887c68a0c24c48decc691996f97e4 Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:40:56 +0100 Subject: [PATCH 62/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/es.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/es.json b/src/Ombi/wwwroot/translations/es.json index 9c38d5d88..fc3ffe4d7 100644 --- a/src/Ombi/wwwroot/translations/es.json +++ b/src/Ombi/wwwroot/translations/es.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Continuar", "Available": "Disponible", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Disponible parcialmente", "Monitored": "Monitoreado", "NotAvailable": "No disponible", @@ -33,6 +35,7 @@ }, "Cancel": "Cancelar", "Submit": "Enviar", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Mark Available", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Problemas", @@ -228,7 +240,8 @@ "Delete": "Borrar problema", "DeletedIssue": "El problema ha sido borrado", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Reiniciar filtro", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Seleccione un Perfil de Calidad", "RootFolderSelect": "Seleccione una Carpeta Raíz", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Estado", - "Availability": "Disponibilidad", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Estado de solicitud", - "Quality": "Calidad", - "RootFolderOverride": "Sobreescribir carpeta raíz", - "QualityOverride": "Sobreescribir calidad", - "Genres": "Géneros", - "TheatricalRelease": "En cines", - "DigitalRelease": "Estreno Digital", - "Votes": "Votos", - "Runtime": "Duración", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Minutos", - "Revenue": "Ingresos", - "Budget": "Presupuesto", - "Keywords": "Palabras Clave/Etiquetas", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Enviar pantalla" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "Esto solicitará cada temporada para este programa", "FirstSeasonTooltip": "Esto solo solicitará la primera temporada para este programa", "LatestSeasonTooltip": "Esto solo solicitará la última temporada para este programa", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From dafe9c1a19d84f00c13f0a51ba90927c24282926 Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:40:58 +0100 Subject: [PATCH 63/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/bg.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/bg.json b/src/Ombi/wwwroot/translations/bg.json index 6bbffc515..b1a522ec4 100644 --- a/src/Ombi/wwwroot/translations/bg.json +++ b/src/Ombi/wwwroot/translations/bg.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Продължаване", "Available": "Налично", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Частично налично", "Monitored": "Наблюдавано", "NotAvailable": "Не е налично", @@ -33,6 +35,7 @@ }, "Cancel": "Отказ", "Submit": "Потвърждаване", + "Update": "Update", "tvShow": "Тв предаване", "movie": "Филм" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Маркиране като налично", "Deleted": "Избраните елементи са изтрити успешно", "Approved": "Избраните елементи са одобрени успешно" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Проблеми", @@ -228,7 +240,8 @@ "Delete": "Изтриване на проблем", "DeletedIssue": "Проблемът е изтрит", "Chat": "Чат", - "Requested": "Заявено" + "Requested": "Заявено", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Изчистване на филтъра", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Изберете профил на качеството", "RootFolderSelect": "Изберете основна папка", "LanguageProfileSelect": "Изберете езиков профил", - "Status": "Състояние", - "Availability": "Наличност", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Състояние на заявката", - "Quality": "Качество", - "RootFolderOverride": "Ръчно задаване на основната папка", - "QualityOverride": "Ръчно задаване на качеството", - "Genres": "Жанрове", - "TheatricalRelease": "Кино премиера", - "DigitalRelease": "Дигитална версия", - "Votes": "Гласове", - "Runtime": "Продължителност", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Минути", - "Revenue": "Приходи", - "Budget": "Бюджет", - "Keywords": "Ключови думи/тагове", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "В ролите" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "Това ще заяви всеки сезон на това предаване", "FirstSeasonTooltip": "Това ще заяви само първия сезон на това предаване", "LatestSeasonTooltip": "Това ще заяви само последния сезон на това предаване", - "NoEpisodes": "За съжаление все още няма данни за епизоди на това предаване!" + "NoEpisodes": "За съжаление все още няма данни за епизоди на това предаване!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Конфигурация на Sonarr", "RadarrConfiguration": "Конфигурация на Radarr", "RequestOnBehalf": "Заявете от името на", "PleaseSelectUser": "Моля, изберете потребител", - "StreamingOn": "Поточното изпълнение е включено", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Повтаряне на заявка" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "Това е езикът, на който искате да се показва интерфейсът на Ombi.", "MobileQRCode": "Мобилен QR код", "LegacyApp": "Стартирайте старото приложение", - "NoQrCode": "Моля, свържете се с вашия администратор, за да активирате QR кодовете" + "NoQrCode": "Моля, свържете се с вашия администратор, за да активирате QR кодовете", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From 3846d56a6e561a1b1dc65c385151d90fdd6217ee Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:40:59 +0100 Subject: [PATCH 64/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/da.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/da.json b/src/Ombi/wwwroot/translations/da.json index df1889603..7bd7c9e48 100644 --- a/src/Ombi/wwwroot/translations/da.json +++ b/src/Ombi/wwwroot/translations/da.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Fortsæt", "Available": "Tilgængelig", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Delvist tilgængelig", "Monitored": "Overvåget", "NotAvailable": "Ikke tilgængelig", @@ -33,6 +35,7 @@ }, "Cancel": "Cancel", "Submit": "Submit", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Mark Available", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Problemer", @@ -228,7 +240,8 @@ "Delete": "Delete issue", "DeletedIssue": "Issue has been deleted", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Nulstil filter", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Status", - "Availability": "Tilgængelighed", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Request Status", - "Quality": "Quality", - "RootFolderOverride": "Tilsidesæt rodmappe", - "QualityOverride": "Tilsidesæt kvalitet", - "Genres": "Genres", - "TheatricalRelease": "Biografudgivelse", - "DigitalRelease": "Digital Release", - "Votes": "Votes", - "Runtime": "Runtime", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Minutes", - "Revenue": "Revenue", - "Budget": "Budget", - "Keywords": "Keywords/Tags", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Cast" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "This will request every season for this show", "FirstSeasonTooltip": "This will only request the First Season for this show", "LatestSeasonTooltip": "This will only request the Latest Season for this show", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From c5f1d3355758a5c3648479d44e50397c7f6c1a9d Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:41:00 +0100 Subject: [PATCH 65/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/de.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/de.json b/src/Ombi/wwwroot/translations/de.json index 1c166abb9..1a254fcaf 100644 --- a/src/Ombi/wwwroot/translations/de.json +++ b/src/Ombi/wwwroot/translations/de.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Weiter", "Available": "Verfügbar", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Teilweise verfügbar", "Monitored": "Überwacht", "NotAvailable": "Nicht verfügbar", @@ -33,6 +35,7 @@ }, "Cancel": "Cancel", "Submit": "Submit", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Mark Available", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Probleme", @@ -228,7 +240,8 @@ "Delete": "Delete issue", "DeletedIssue": "Issue has been deleted", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Filter zurücksetzen", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Status", - "Availability": "Verfügbarkeit", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Anfrage Status", - "Quality": "Quality", - "RootFolderOverride": "Stammverzeichnis Überschreiben", - "QualityOverride": "Qualitäts Überschreiben", - "Genres": "Genres", - "TheatricalRelease": "Kinostart", - "DigitalRelease": "Digital Release", - "Votes": "Votes", - "Runtime": "Runtime", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Minutes", - "Revenue": "Revenue", - "Budget": "Budget", - "Keywords": "Keywords/Tags", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Besetzung" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "Dies wird jede Saison für diese Show anfordern", "FirstSeasonTooltip": "Dies wird nur die erste Saison für diese Show anfordern", "LatestSeasonTooltip": "Dies wird nur die letzte Saison für diese Show anfordern", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From a38090b8dde17d1d150af0bca2830ea45d013a0e Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:41:01 +0100 Subject: [PATCH 66/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/hu.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/hu.json b/src/Ombi/wwwroot/translations/hu.json index 78bcb6ba7..eac662f69 100644 --- a/src/Ombi/wwwroot/translations/hu.json +++ b/src/Ombi/wwwroot/translations/hu.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Tovább", "Available": "Elérhető", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Részlegesen elérhető", "Monitored": "Figyelve", "NotAvailable": "Nem elérhető", @@ -33,6 +35,7 @@ }, "Cancel": "Cancel", "Submit": "Submit", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Mark Available", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Problémák", @@ -228,7 +240,8 @@ "Delete": "Delete issue", "DeletedIssue": "Issue has been deleted", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Szűrő törlése", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Állapot", - "Availability": "Elérhetőség", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Request Status", - "Quality": "Quality", - "RootFolderOverride": "Gyökér mappa felülírása", - "QualityOverride": "Minőség felülírása", - "Genres": "Genres", - "TheatricalRelease": "Mozis kiadás", - "DigitalRelease": "Digital Release", - "Votes": "Votes", - "Runtime": "Runtime", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Minutes", - "Revenue": "Revenue", - "Budget": "Budget", - "Keywords": "Keywords/Tags", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Cast" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "This will request every season for this show", "FirstSeasonTooltip": "This will only request the First Season for this show", "LatestSeasonTooltip": "This will only request the Latest Season for this show", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From aef0368de3aec306245bd1b16bc0de596a20d451 Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:41:02 +0100 Subject: [PATCH 67/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/it.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/it.json b/src/Ombi/wwwroot/translations/it.json index c2599f4b3..dcdac51ae 100644 --- a/src/Ombi/wwwroot/translations/it.json +++ b/src/Ombi/wwwroot/translations/it.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Continua", "Available": "Disponibile", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Parzialmente disponibile", "Monitored": "Monitorato", "NotAvailable": "Non disponibile", @@ -33,6 +35,7 @@ }, "Cancel": "Annulla", "Submit": "Invia", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Segna come Disponibile", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Problemi", @@ -228,7 +240,8 @@ "Delete": "Elimina problema", "DeletedIssue": "Il problema è stato eliminato", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Rimuovi filtro", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Seleziona Un Profilo di Qualità", "RootFolderSelect": "Seleziona Una Cartella di Root", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Stato", - "Availability": "Disponibilità", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Stato Richiesta", - "Quality": "Qualità", - "RootFolderOverride": "Sovrascrivi cartella principale", - "QualityOverride": "Sovrascrivi qualità", - "Genres": "Generi", - "TheatricalRelease": "Rilascio Teatrale", - "DigitalRelease": "Rilascio Digitale", - "Votes": "Voti", - "Runtime": "Durata", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Minuti", - "Revenue": "Entrate", - "Budget": "Budget", - "Keywords": "Parole Chiave/Tag", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Trasmetti" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "Questo richiederà ogni stagione per questo show", "FirstSeasonTooltip": "Questo richiederà solo la Prima Stagione per questo show", "LatestSeasonTooltip": "Questo richiederà solo l'Ultima Stagione per questo show", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From 2156129f175335746f204bb123035c070f518e96 Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:41:03 +0100 Subject: [PATCH 68/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/nl.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/nl.json b/src/Ombi/wwwroot/translations/nl.json index ed6890593..aa36e6f0b 100644 --- a/src/Ombi/wwwroot/translations/nl.json +++ b/src/Ombi/wwwroot/translations/nl.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Doorgaan", "Available": "Beschikbaar", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Deels Beschikbaar", "Monitored": "Gemonitord", "NotAvailable": "Niet Beschikbaar", @@ -33,6 +35,7 @@ }, "Cancel": "Cancel", "Submit": "Submit", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Mark Available", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Problemen", @@ -228,7 +240,8 @@ "Delete": "Delete issue", "DeletedIssue": "Issue has been deleted", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Verwijder Filter", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Status", - "Availability": "Beschikbaarheid", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Aanvraagstatus", - "Quality": "Quality", - "RootFolderOverride": "Hoofdmap overschrijven", - "QualityOverride": "Kwaliteit overschrijven", - "Genres": "Genres", - "TheatricalRelease": "Bioscoop Uitgave", - "DigitalRelease": "Digital Release", - "Votes": "Votes", - "Runtime": "Runtime", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Minutes", - "Revenue": "Revenue", - "Budget": "Budget", - "Keywords": "Keywords/Tags", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Acteurs" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "Dit verzoekt ieder seizoen van deze serie", "FirstSeasonTooltip": "Dit verzoekt alleen het eerste seizoen van deze serie", "LatestSeasonTooltip": "Dit verzoekt alleen het laatste seizoen van deze show", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From c0dd327426514e305a88750d7c3deb21c194108f Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:41:04 +0100 Subject: [PATCH 69/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/no.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/no.json b/src/Ombi/wwwroot/translations/no.json index 6c4537478..c08aa3393 100644 --- a/src/Ombi/wwwroot/translations/no.json +++ b/src/Ombi/wwwroot/translations/no.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Gå videre", "Available": "Tilgjengelig", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Delvis tilgjengelig", "Monitored": "Overvåket", "NotAvailable": "Ikke tilgjengelig", @@ -33,6 +35,7 @@ }, "Cancel": "Cancel", "Submit": "Submit", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Mark Available", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Mangler", @@ -228,7 +240,8 @@ "Delete": "Delete issue", "DeletedIssue": "Issue has been deleted", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Tøm filter", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Status", - "Availability": "Tilgjengelighet", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Request Status", - "Quality": "Quality", - "RootFolderOverride": "Overstyring av rotmappe", - "QualityOverride": "Overstyr kvalitet", - "Genres": "Genres", - "TheatricalRelease": "Kinopremiere", - "DigitalRelease": "Digital Release", - "Votes": "Votes", - "Runtime": "Runtime", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Minutes", - "Revenue": "Revenue", - "Budget": "Budget", - "Keywords": "Keywords/Tags", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Cast" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "This will request every season for this show", "FirstSeasonTooltip": "This will only request the First Season for this show", "LatestSeasonTooltip": "This will only request the Latest Season for this show", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From 1e03651c3b0eb77e45f9f6c55d31ee672eacd51e Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:41:06 +0100 Subject: [PATCH 70/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/pl.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/pl.json b/src/Ombi/wwwroot/translations/pl.json index 8dce305f2..5bd52a8f5 100644 --- a/src/Ombi/wwwroot/translations/pl.json +++ b/src/Ombi/wwwroot/translations/pl.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Kontynuuj", "Available": "Dostępne", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Częściowo dostępne", "Monitored": "Monitorowane", "NotAvailable": "Niedostępne", @@ -33,6 +35,7 @@ }, "Cancel": "Cancel", "Submit": "Submit", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Mark Available", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Problemy", @@ -228,7 +240,8 @@ "Delete": "Delete issue", "DeletedIssue": "Issue has been deleted", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Wyczyść filtr", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Stan", - "Availability": "Dostępność", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Status zgłoszenia", - "Quality": "Quality", - "RootFolderOverride": "Wymuszenie folderu głównego", - "QualityOverride": "Wymuszenie jakości", - "Genres": "Genres", - "TheatricalRelease": "Premiera kinowa", - "DigitalRelease": "Digital Release", - "Votes": "Votes", - "Runtime": "Runtime", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Minutes", - "Revenue": "Revenue", - "Budget": "Budget", - "Keywords": "Keywords/Tags", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Obsada" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "Zgłoszenie obejmie wszystkie sezony tego serialu", "FirstSeasonTooltip": "Zgłoszenie obejmie pierwszy sezon tego serialu", "LatestSeasonTooltip": "Zgłoszenie obejmie najnowszy sezon tego serialu", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From fc8d108b660d53f499538328bfc271b05ac47d2b Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:41:07 +0100 Subject: [PATCH 71/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/pt.json | 370 +++++++++++++++----------- 1 file changed, 208 insertions(+), 162 deletions(-) diff --git a/src/Ombi/wwwroot/translations/pt.json b/src/Ombi/wwwroot/translations/pt.json index 89534275d..0a3569a33 100644 --- a/src/Ombi/wwwroot/translations/pt.json +++ b/src/Ombi/wwwroot/translations/pt.json @@ -1,77 +1,80 @@ { "Login": { - "SignInButton": "Iniciar sessão", - "UsernamePlaceholder": "Nome de usuário", - "PasswordPlaceholder": "Senha", - "RememberMe": "Lembrar-me", - "SignInWith": "Entre com {{appName}}", - "SignInWithPlex": "Iniciar sessão com Plex", - "ForgottenPassword": "Esqueceu sua senha?", + "SignInButton": "Sign in", + "UsernamePlaceholder": "Username", + "PasswordPlaceholder": "Password", + "RememberMe": "Remember Me", + "SignInWith": "Sign in with {{appName}}", + "SignInWithPlex": "Sign in with Plex", + "ForgottenPassword": "Forgot your password?", "Errors": { - "IncorrectCredentials": "Nome de usuário ou senha incorretos" + "IncorrectCredentials": "Incorrect username or password" } }, "Common": { - "ContinueButton": "Continuar", - "Available": "Disponível", - "PartiallyAvailable": "Parcialmente Disponível", - "Monitored": "Monitorado", - "NotAvailable": "Não Disponível", - "ProcessingRequest": "Processando Solicitação", - "PendingApproval": "Aprovação Pendente", - "RequestDenied": "Solicitação Negada", - "NotRequested": "Não Solicitado", - "Requested": "Solicitado", + "ContinueButton": "Continue", + "Available": "Available", + "Approved": "Approved", + "Pending": "Pending", + "PartiallyAvailable": "Partially Available", + "Monitored": "Monitored", + "NotAvailable": "Not Available", + "ProcessingRequest": "Processing Request", + "PendingApproval": "Pending Approval", + "RequestDenied": "Request Denied", + "NotRequested": "Not Requested", + "Requested": "Requested", "Search": "Search", - "Request": "Solicitar", - "Denied": "Negado", - "Approve": "Aprovar", - "PartlyAvailable": "Parcialmente Disponível", - "ViewDetails": "Ver detalhes", + "Request": "Request", + "Denied": "Denied", + "Approve": "Approve", + "PartlyAvailable": "Partly Available", + "ViewDetails": "View Details", "Errors": { - "Validation": "Por favor, verifique os dados inseridos" + "Validation": "Please check your entered values" }, - "Cancel": "Cancelar", - "Submit": "Submeter", + "Cancel": "Cancel", + "Submit": "Submit", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, "PasswordReset": { - "EmailAddressPlaceholder": "Endereço de e-mail", - "ResetPasswordButton": "Redefinir Senha" + "EmailAddressPlaceholder": "Email Address", + "ResetPasswordButton": "Reset Password" }, "LandingPage": { - "OnlineHeading": "Online no momento", - "OnlineParagraph": "O servidor de mídia está atualmente online", - "PartiallyOnlineHeading": "Parcialmente Online", - "PartiallyOnlineParagraph": "O servidor de mídia está parcialmente online.", - "MultipleServersUnavailable": "Existem {{serversUnavailable}} servidores offline de um total de {{totalServers}}.", - "SingleServerUnavailable": "Existe {{serversUnavailable}} servidor offline de um total de {{totalServers}}.", - "OfflineHeading": "Offline Agora", - "OfflineParagraph": "O servidor de mídia está atualmente offline.", - "CheckPageForUpdates": "Verifique esta página para acompanhar as atualizações do site." + "OnlineHeading": "Currently Online", + "OnlineParagraph": "The media server is currently online", + "PartiallyOnlineHeading": "Partially Online", + "PartiallyOnlineParagraph": "The media server is partially online.", + "MultipleServersUnavailable": "There are {{serversUnavailable}} servers offline out of {{totalServers}}.", + "SingleServerUnavailable": "There is {{serversUnavailable}} server offline out of {{totalServers}}.", + "OfflineHeading": "Currently Offline", + "OfflineParagraph": "The media server is currently offline.", + "CheckPageForUpdates": "Check this page for continuous site updates." }, "NavigationBar": { "Discover": "Discover", - "Search": "Pesquisar", - "Requests": "Solicitações", - "UserManagement": "User Management", - "Issues": "Problemas", - "Vote": "Votar", - "Donate": "Doações!", - "DonateLibraryMaintainer": "Doar para o Dono da Biblioteca", + "Search": "Search", + "Requests": "Requests", + "UserManagement": "Users", + "Issues": "Issues", + "Vote": "Vote", + "Donate": "Donate!", + "DonateLibraryMaintainer": "Donate to Library Maintainer", "DonateTooltip": "This is how I convince my wife to let me spend my spare time developing Ombi 😁", - "UpdateAvailableTooltip": "Atualização Disponível!", - "Settings": "Configurações", - "Welcome": "Bem-vindo(a), {{username}}", - "UpdateDetails": "Detalhes da Atualização", - "Logout": "Desconectar", - "OpenMobileApp": "Abrir Aplicativo do Celular", - "RecentlyAdded": "Recentemente Adicionado", + "UpdateAvailableTooltip": "Update Available!", + "Settings": "Settings", + "Welcome": "Welcome {{username}}", + "UpdateDetails": "Update Details", + "Logout": "Logout", + "OpenMobileApp": "Open Mobile App", + "RecentlyAdded": "Recently Added", "ChangeTheme": "Change Theme", "Calendar": "Calendar", "UserPreferences": "Preferences", - "FeatureSuggestion": "Feature Suggestion", + "FeatureSuggestion": "Features", "FeatureSuggestionTooltip": "Have a great new idea? Suggest it here!", "Filter": { "Movies": "Movies", @@ -84,98 +87,98 @@ "EveningWelcome": "Good evening!" }, "Search": { - "Title": "Pesquisar", - "Paragraph": "Quer assistir a algo que não está disponível? Sem problemas, basta pesquisar abaixo e solicitar!", - "MoviesTab": "Filmes", - "TvTab": "Séries", - "MusicTab": "Músicas", + "Title": "Search", + "Paragraph": "Want to watch something that is not currently available? No problem, just search for it below and request it!", + "MoviesTab": "Movies", + "TvTab": "TV Shows", + "MusicTab": "Music", "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "AdvancedSearchHeader": "Advanced Search", - "Suggestions": "Sugestões", - "NoResults": "Desculpe, não encontramos nenhum resultado!", - "DigitalDate": "Lançamento Digital: {{date}}", - "TheatricalRelease": "Lançamento nos Cinemas: {{date}}", - "ViewOnPlex": "View On Plex", - "ViewOnEmby": "View On Emby", + "Suggestions": "Suggestions", + "NoResults": "Sorry, we didn't find any results!", + "DigitalDate": "Digital Release: {{date}}", + "TheatricalRelease": "Theatrical Release: {{date}}", + "ViewOnPlex": "Play On Plex", + "ViewOnEmby": "Play On Emby", "ViewOnJellyfin": "Play On Jellyfin", - "RequestAdded": "O pedido de {{title}} foi adicionado com sucesso", - "Similar": "Semelhantes", - "Refine": "Corrigir", - "SearchBarPlaceholder": "Digite Aqui para Pesquisar", + "RequestAdded": "Request for {{title}} has been added successfully", + "Similar": "Similar", + "Refine": "Refine", + "SearchBarPlaceholder": "Type Here to Search", "Movies": { - "PopularMovies": "Filmes Populares", - "UpcomingMovies": "Filmes Em Breve", - "TopRatedMovies": "Filmes Mais Votados", - "NowPlayingMovies": "Filmes em Cartaz", - "HomePage": "Página Inicial", + "PopularMovies": "Popular Movies", + "UpcomingMovies": "Upcoming Movies", + "TopRatedMovies": "Top Rated Movies", + "NowPlayingMovies": "Now Playing Movies", + "HomePage": "Home Page", "Trailer": "Trailer" }, "TvShows": { "Popular": "Popular", - "Trending": "Tendências", - "MostWatched": "Mais Assistidos", - "MostAnticipated": "Mais Aguardados", - "Results": "Resultados", - "AirDate": "Data de Exibição:", - "AllSeasons": "Todas as Temporadas", - "FirstSeason": "Primeira temporada", - "LatestSeason": "Última Temporada", - "Select": "Selecionar...", - "SubmitRequest": "Enviar solicitação", + "Trending": "Trending", + "MostWatched": "Most Watched", + "MostAnticipated": "Most Anticipated", + "Results": "Results", + "AirDate": "Air Date:", + "AllSeasons": "All Seasons", + "FirstSeason": "First Season", + "LatestSeason": "Latest Season", + "Select": "Select ...", + "SubmitRequest": "Submit Request", "Season": "Season {{seasonNumber}}", - "SelectAllInSeason": "Selecione Tudo na Temporada {{seasonNumber}}" + "SelectAllInSeason": "Select All in Season {{seasonNumber}}" }, "AdvancedSearchInstructions": "Please choose what type of media you are searching for:", "YearOfRelease": "Year of Release", "KeywordSearchingDisclaimer": "Please note that Keyword Searching is very hit and miss due to the inconsistent data in TheMovieDb" }, "Requests": { - "Title": "Solicitações", - "Paragraph": "Abaixo, você pode ver o seu e todos os outros pedidos, bem como o seu download e status de aprovação.", - "MoviesTab": "Filmes", + "Title": "Requests", + "Paragraph": "Below you can see yours and all other requests, as well as their download and approval status.", + "MoviesTab": "Movies", "ArtistName": "Artist", "AlbumName": "Album Name", - "TvTab": "Séries", - "MusicTab": "Músicas", + "TvTab": "TV Shows", + "MusicTab": "Music", "RequestedBy": "Requested By", "Status": "Status", "RequestStatus": "Request status", - "Denied": " Negados:", - "TheatricalRelease": "Lançamento nos Cinemas: {{date}}", - "ReleaseDate": "Lançado: {{date}}", - "TheatricalReleaseSort": "Lançamento nos Cinemas", - "DigitalRelease": "Lançamento Digital: {{date}}", + "Denied": " Denied:", + "TheatricalRelease": "Theatrical Release: {{date}}", + "ReleaseDate": "Released: {{date}}", + "TheatricalReleaseSort": "Theatrical Release", + "DigitalRelease": "Digital Release: {{date}}", "RequestDate": "Request Date", - "QualityOverride": "Substituição de Qualidade:", - "RootFolderOverride": "Substituição da Pasta Raiz:", - "ChangeRootFolder": "Pasta Raiz", - "ChangeQualityProfile": "Perfil de Qualidade", - "MarkUnavailable": "Marcar como Indisponível", - "MarkAvailable": "Marcar como Disponível", - "Remove": "Remover", - "Deny": "Negar", + "QualityOverride": "Quality Override:", + "RootFolderOverride": "Root Folder Override:", + "ChangeRootFolder": "Root Folder", + "ChangeQualityProfile": "Quality Profile", + "MarkUnavailable": "Mark Unavailable", + "MarkAvailable": "Mark Available", + "Remove": "Remove", + "Deny": "Deny", "DenyReason": "Deny Reason", "DeniedReason": "Denied Reason", "Season": "Season", - "GridTitle": "Título", - "AirDate": "AirDate", + "GridTitle": "Title", + "AirDate": "Air Date", "GridStatus": "Status", - "ReportIssue": "Relatar Problema", - "Filter": "Filtro", - "Sort": "Ordenar por", - "SeasonNumberHeading": "Temporada: {seasonNumber}", - "SortTitleAsc": "Título ▲", - "SortTitleDesc": "Título ▼", - "SortRequestDateAsc": "Data da Solicitação ▲", - "SortRequestDateDesc": "Data da Solicitação ▼", + "ReportIssue": "Report Issue", + "Filter": "Filter", + "Sort": "Sort", + "SeasonNumberHeading": "Season: {seasonNumber}", + "SortTitleAsc": "Title ▲", + "SortTitleDesc": "Title ▼", + "SortRequestDateAsc": "Request Date ▲", + "SortRequestDateDesc": "Request Date ▼", "SortStatusAsc": "Status ▲", "SortStatusDesc": "Status ▼", "Remaining": { - "Quota": "{{remaining}}/{{total}} solicitações restantes", - "NextDays": "Outra solicitação será adicionada em {{time}} dias", - "NextHours": "Outra solicitação será adicionada em {{time}} horas", - "NextMinutes": "Outra solicitação será adicionada em {{time}} minutos", - "NextMinute": "Outra solicitação será adicionada em {{time}} minuto" + "Quota": "{{remaining}}/{{total}} requests remaining", + "NextDays": "Another request will be added in {{time}} days", + "NextHours": "Another request will be added in {{time}} hours", + "NextMinutes": "Another request will be added in {{time}} minutes", + "NextMinute": "Another request will be added in {{time}} minute" }, "AllRequests": "All Requests", "PendingRequests": "Pending Requests", @@ -192,27 +195,36 @@ "ChangeAvailability": "Mark Available", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { - "Title": "Problemas", - "PendingTitle": "Problemas pendentes", - "InProgressTitle": "Problemas em resolução", - "ResolvedTitle": "Problemas Resolvidos", - "ColumnTitle": "Título", + "Title": "Issues", + "PendingTitle": "Pending Issues", + "InProgressTitle": "In Progress Issues", + "ResolvedTitle": "Resolved Issues", + "ColumnTitle": "Title", "Count": "Count", - "Category": "Categoria", + "Category": "Category", "Status": "Status", - "Details": "Detalhes", - "Description": "Descrição", - "NoComments": "Sem Comentários!", - "MarkInProgress": "Marcar como em andamento", - "MarkResolved": "Marcar como resolvido", - "SendMessageButton": "Enviar", - "Subject": "Assunto", - "Comments": "Comentários", - "WriteMessagePlaceholder": "Escreva sua mensagem aqui...", - "ReportedBy": "Reportado por", + "Details": "Details", + "Description": "Description", + "NoComments": "No Comments!", + "MarkInProgress": "Mark In Progress", + "MarkResolved": "Mark Resolved", + "SendMessageButton": "Send", + "Subject": "Subject", + "Comments": "Comments", + "WriteMessagePlaceholder": "Write your message here...", + "ReportedBy": "Reported By", "IssueDialog": { "Title": "Report an issue", "DescriptionPlaceholder": "Please describe the issue", @@ -228,28 +240,29 @@ "Delete": "Delete issue", "DeletedIssue": "Issue has been deleted", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { - "ClearFilter": "Limpar Filtro", - "FilterHeaderAvailability": "Disponibilidade", + "ClearFilter": "Clear Filter", + "FilterHeaderAvailability": "Availability", "FilterHeaderRequestStatus": "Status", - "Approved": "Aprovado", - "PendingApproval": "Aprovação Pendente", + "Approved": "Approved", + "PendingApproval": "Pending Approval", "WatchProviders": "Watch Providers", "Keywords": "Keywords" }, "UserManagment": { - "TvRemaining": "Séries: {{remaining}}/{{total}} restantes", - "MovieRemaining": "Filmes: {{remaining}}/{{total}} restantes", - "MusicRemaining": "Músicas: {{remaining}}/{{total}} restantes", - "TvDue": "Série: {{date}}", - "MovieDue": "Filme: {{date}}", - "MusicDue": "Música: {{date}}" + "TvRemaining": "TV: {{remaining}}/{{total}} remaining", + "MovieRemaining": "Movies: {{remaining}}/{{total}} remaining", + "MusicRemaining": "Music: {{remaining}}/{{total}} remaining", + "TvDue": "TV: {{date}}", + "MovieDue": "Movie: {{date}}", + "MusicDue": "Music: {{date}}" }, "Votes": { - "CompletedVotesTab": "Votado", - "VotesTab": "Votos necessários" + "CompletedVotesTab": "Voted", + "VotesTab": "Votes Needed" }, "MediaDetails": { "Denied": "Denied", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Status", - "Availability": "Availability", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Request Status", - "Quality": "Quality", - "RootFolderOverride": "Root Folder Override", - "QualityOverride": "Quality Override", - "Genres": "Genres", - "TheatricalRelease": "Theatrical Release", - "DigitalRelease": "Digital Release", - "Votes": "Votes", - "Runtime": "Runtime", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Minutes", - "Revenue": "Revenue", - "Budget": "Budget", - "Keywords": "Keywords/Tags", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Cast" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "This will request every season for this show", "FirstSeasonTooltip": "This will only request the First Season for this show", "LatestSeasonTooltip": "This will only request the Latest Season for this show", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From 2961319f61e95b2871480152b86ddca3375576a1 Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:41:08 +0100 Subject: [PATCH 72/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/ru.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/ru.json b/src/Ombi/wwwroot/translations/ru.json index 61faf7313..3405476b3 100644 --- a/src/Ombi/wwwroot/translations/ru.json +++ b/src/Ombi/wwwroot/translations/ru.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Продолжить", "Available": "Доступно", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Частично доступно", "Monitored": "Мониторинг", "NotAvailable": "Недоступно", @@ -33,6 +35,7 @@ }, "Cancel": "Cancel", "Submit": "Submit", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Mark Available", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Проблемы", @@ -228,7 +240,8 @@ "Delete": "Delete issue", "DeletedIssue": "Issue has been deleted", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Сбросить фильтр", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Статус", - "Availability": "Доступность", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Request Status", - "Quality": "Quality", - "RootFolderOverride": "Переопределение корневой папки", - "QualityOverride": "Переопределение качества", - "Genres": "Genres", - "TheatricalRelease": "Релиз в кинотеатрах", - "DigitalRelease": "Digital Release", - "Votes": "Votes", - "Runtime": "Runtime", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Minutes", - "Revenue": "Revenue", - "Budget": "Budget", - "Keywords": "Keywords/Tags", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Cast" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "This will request every season for this show", "FirstSeasonTooltip": "This will only request the First Season for this show", "LatestSeasonTooltip": "This will only request the Latest Season for this show", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From a4a80ba4da49733a65e691003646c0f349bd4c5f Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:41:09 +0100 Subject: [PATCH 73/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/sk.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/sk.json b/src/Ombi/wwwroot/translations/sk.json index 73db54501..770a5e5d3 100644 --- a/src/Ombi/wwwroot/translations/sk.json +++ b/src/Ombi/wwwroot/translations/sk.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Pokračovať", "Available": "Dostupné", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Čiastočne dostupné", "Monitored": "Sledované", "NotAvailable": "Nie je k dispozícii", @@ -33,6 +35,7 @@ }, "Cancel": "Zrušiť", "Submit": "Odoslať", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Označiť k dispozícií", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Problémy", @@ -228,7 +240,8 @@ "Delete": "Odstrániť problém", "DeletedIssue": "Problém bol odstránený", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Vymazať filter", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Výber profilu kvality", "RootFolderSelect": "Výber koreňového priečinka", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Stav", - "Availability": "Dostupnosť", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Požiadať stav", - "Quality": "Kvalita", - "RootFolderOverride": "Prepísanie koreňového priečinku", - "QualityOverride": "Prepísanie kvality", - "Genres": "Žánre", - "TheatricalRelease": "Kino vydanie", - "DigitalRelease": "Digitálne vydanie", - "Votes": "Hlasy", - "Runtime": "Dĺžka", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} minút", - "Revenue": "Výnos", - "Budget": "Rozpočet", - "Keywords": "Kľúčové slová/Tagy", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Obsadenie" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "Požiadať všetky sezóny série.", "FirstSeasonTooltip": "Požiadať iba prvú sezónu série.", "LatestSeasonTooltip": "Požiadať iba poslednú sezónu série", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From 601a87762a2ad393ee5fa2fe52052ceeeefb1bef Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:41:10 +0100 Subject: [PATCH 74/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/sv.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/sv.json b/src/Ombi/wwwroot/translations/sv.json index 37f3ed79d..0c2d188ff 100644 --- a/src/Ombi/wwwroot/translations/sv.json +++ b/src/Ombi/wwwroot/translations/sv.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "Fortsätt", "Available": "Tillgänglig", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "Delvis tillgänglig", "Monitored": "Övervakad", "NotAvailable": "Inte tillgänglig", @@ -33,6 +35,7 @@ }, "Cancel": "Avbryt", "Submit": "Skicka in", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Markera Tillgänglig", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "Problem", @@ -228,7 +240,8 @@ "Delete": "Ta bort problem", "DeletedIssue": "Problemet har tagits bort", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "Rensa filter", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Välj en kvalitetsprofil", "RootFolderSelect": "Välj en rotmapp", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Status", - "Availability": "Tillgänglighet", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Status för begäran", - "Quality": "Kvalitet", - "RootFolderOverride": "Rotmappsöverskridande", - "QualityOverride": "Kvalitétsöverskridande", - "Genres": "Genrer", - "TheatricalRelease": "Biopremiär", - "DigitalRelease": "Digital release", - "Votes": "Röster", - "Runtime": "Speltid", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} minuter", - "Revenue": "Intäkter", - "Budget": "Budget", - "Keywords": "Nyckelord/Taggar", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Rollista" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "Detta kommer att begära varje säsong för denna serie", "FirstSeasonTooltip": "Detta kommer endast att begära den första säsongen för denna serie", "LatestSeasonTooltip": "Detta kommer endast att begära den senaste säsongen för denna serie", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From f6e9784367d3678d899ed79bef6caa52005b6661 Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:41:11 +0100 Subject: [PATCH 75/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/zh.json | 82 +++++++++++++++++++++------ 1 file changed, 64 insertions(+), 18 deletions(-) diff --git a/src/Ombi/wwwroot/translations/zh.json b/src/Ombi/wwwroot/translations/zh.json index 589d45e8d..8f534e644 100644 --- a/src/Ombi/wwwroot/translations/zh.json +++ b/src/Ombi/wwwroot/translations/zh.json @@ -14,6 +14,8 @@ "Common": { "ContinueButton": "繼續", "Available": "已收錄", + "Approved": "Approved", + "Pending": "Pending", "PartiallyAvailable": "部分已收錄", "Monitored": "監控中", "NotAvailable": "未收錄", @@ -33,6 +35,7 @@ }, "Cancel": "Cancel", "Submit": "Submit", + "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, @@ -192,7 +195,16 @@ "ChangeAvailability": "Mark Available", "Deleted": "Successfully deleted selected items", "Approved": "Successfully approved selected items" - } + }, + "SuccessfullyApproved": "Successfully Approved", + "NowAvailable": "Request is now available", + "NowUnavailable": "Request is now unavailable", + "SuccessfullyReprocessed": "Successfully Re-processed the request", + "DeniedRequest": "Denied Request", + "RequestCollection": "Request Collection", + "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", + "NeedToSelectEpisodes": "You need to select some episodes!", + "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { "Title": "問題", @@ -228,7 +240,8 @@ "Delete": "Delete issue", "DeletedIssue": "Issue has been deleted", "Chat": "Chat", - "Requested": "Requested" + "Requested": "Requested", + "UserOnDate": "{{user}} on {{date}}" }, "Filter": { "ClearFilter": "清除篩選條件", @@ -269,21 +282,33 @@ "QualityProfilesSelect": "Select A Quality Profile", "RootFolderSelect": "Select A Root Folder", "LanguageProfileSelect": "Select A Language Profile", - "Status": "Status", - "Availability": "Availability", + "Status": "Status:", + "StatusValues": { + "Planned": "Planned", + "In Production": "In Production", + "Released": "Released", + "Returning Series": "Returning Series", + "Ended": "Ended", + "Canceled": "Canceled" + }, + "Seasons": "Seasons:", + "Episodes": "Episodes:", + "Availability": "Availability:", "RequestStatus": "Request Status", - "Quality": "Quality", - "RootFolderOverride": "Root Folder Override", - "QualityOverride": "Quality Override", - "Genres": "Genres", - "TheatricalRelease": "Release", - "DigitalRelease": "Digital Release", - "Votes": "Votes", - "Runtime": "Runtime", + "Quality": "Quality:", + "RootFolderOverride": "Root Folder Override:", + "QualityOverride": "Quality Override:", + "Network": "Network:", + "Genres": "Genres:", + "FirstAired": "First Aired:", + "TheatricalRelease": "Release:", + "DigitalRelease": "Digital Release:", + "Votes": "Votes:", + "Runtime": "Runtime:", "Minutes": "{{runtime}} Minutes", - "Revenue": "Revenue", - "Budget": "Budget", - "Keywords": "Keywords/Tags", + "Revenue": "Revenue:", + "Budget": "Budget:", + "Keywords": "Keywords/Tags:", "Casts": { "CastTitle": "Cast" }, @@ -291,13 +316,17 @@ "AllSeasonsTooltip": "This will request every season for this show", "FirstSeasonTooltip": "This will only request the First Season for this show", "LatestSeasonTooltip": "This will only request the Latest Season for this show", - "NoEpisodes": "There unfortunately is no episode data for this show yet!" + "NoEpisodes": "There unfortunately is no episode data for this show yet!", + "SeasonNumber": "Season {{number}}" }, "SonarrConfiguration": "Sonarr Configuration", "RadarrConfiguration": "Radarr Configuration", "RequestOnBehalf": "Request on behalf of", "PleaseSelectUser": "Please select a user", - "StreamingOn": "Streaming On", + "StreamingOn": "Streaming On:", + "RequestedBy": "Requested By:", + "RequestDate": "Request Date:", + "DeniedReason": "Denied Reason:", "ReProcessRequest": "Re-Process Request" }, "Discovery": { @@ -333,6 +362,23 @@ "LanguageDescription": "This is the language you would like the Ombi interface to be displayed in.", "MobileQRCode": "Mobile QR Code", "LegacyApp": "Launch Legacy App", - "NoQrCode": "Please contact your administrator to enable QR codes" + "NoQrCode": "Please contact your administrator to enable QR codes", + "UserType": "User Type:", + "ChangeDetails": "Change Details", + "NeedCurrentPassword": "You need your current password to make any changes here", + "CurrentPassword": "Current Password", + "EmailAddress": "Email Address", + "NewPassword": "New Password", + "NewPasswordConfirm": "New Password Confirm", + "Security": "Security", + "Profile": "Profile", + "UpdatedYourInformation": "Updated your information" + }, + "UserTypeLabel": { + "1": "Local User", + "2": "Plex User", + "3": "Emby User", + "4": "Emby Connect User", + "5": "Jellyfin User" } } From 77d017b3d8ffd1714a2f6efecc8c900d56d062e4 Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 17:41:12 +0100 Subject: [PATCH 76/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/pt.json | 288 +++++++++++++------------- 1 file changed, 144 insertions(+), 144 deletions(-) diff --git a/src/Ombi/wwwroot/translations/pt.json b/src/Ombi/wwwroot/translations/pt.json index 0a3569a33..38434d147 100644 --- a/src/Ombi/wwwroot/translations/pt.json +++ b/src/Ombi/wwwroot/translations/pt.json @@ -1,80 +1,80 @@ { "Login": { - "SignInButton": "Sign in", - "UsernamePlaceholder": "Username", - "PasswordPlaceholder": "Password", - "RememberMe": "Remember Me", - "SignInWith": "Sign in with {{appName}}", - "SignInWithPlex": "Sign in with Plex", - "ForgottenPassword": "Forgot your password?", + "SignInButton": "Iniciar sessão", + "UsernamePlaceholder": "Nome de usuário", + "PasswordPlaceholder": "Senha", + "RememberMe": "Lembrar-me", + "SignInWith": "Entre com {{appName}}", + "SignInWithPlex": "Iniciar sessão com Plex", + "ForgottenPassword": "Esqueceu sua senha?", "Errors": { - "IncorrectCredentials": "Incorrect username or password" + "IncorrectCredentials": "Nome de usuário ou senha incorretos" } }, "Common": { - "ContinueButton": "Continue", - "Available": "Available", + "ContinueButton": "Continuar", + "Available": "Disponível", "Approved": "Approved", "Pending": "Pending", - "PartiallyAvailable": "Partially Available", - "Monitored": "Monitored", - "NotAvailable": "Not Available", - "ProcessingRequest": "Processing Request", - "PendingApproval": "Pending Approval", - "RequestDenied": "Request Denied", - "NotRequested": "Not Requested", - "Requested": "Requested", + "PartiallyAvailable": "Parcialmente Disponível", + "Monitored": "Monitorado", + "NotAvailable": "Não Disponível", + "ProcessingRequest": "Processando Solicitação", + "PendingApproval": "Aprovação Pendente", + "RequestDenied": "Solicitação Negada", + "NotRequested": "Não Solicitado", + "Requested": "Solicitado", "Search": "Search", - "Request": "Request", - "Denied": "Denied", - "Approve": "Approve", - "PartlyAvailable": "Partly Available", - "ViewDetails": "View Details", + "Request": "Solicitar", + "Denied": "Negado", + "Approve": "Aprovar", + "PartlyAvailable": "Parcialmente Disponível", + "ViewDetails": "Ver detalhes", "Errors": { - "Validation": "Please check your entered values" + "Validation": "Por favor, verifique os dados inseridos" }, - "Cancel": "Cancel", - "Submit": "Submit", + "Cancel": "Cancelar", + "Submit": "Submeter", "Update": "Update", "tvShow": "TV Show", "movie": "Movie" }, "PasswordReset": { - "EmailAddressPlaceholder": "Email Address", - "ResetPasswordButton": "Reset Password" + "EmailAddressPlaceholder": "Endereço de e-mail", + "ResetPasswordButton": "Redefinir Senha" }, "LandingPage": { - "OnlineHeading": "Currently Online", - "OnlineParagraph": "The media server is currently online", - "PartiallyOnlineHeading": "Partially Online", - "PartiallyOnlineParagraph": "The media server is partially online.", - "MultipleServersUnavailable": "There are {{serversUnavailable}} servers offline out of {{totalServers}}.", - "SingleServerUnavailable": "There is {{serversUnavailable}} server offline out of {{totalServers}}.", - "OfflineHeading": "Currently Offline", - "OfflineParagraph": "The media server is currently offline.", - "CheckPageForUpdates": "Check this page for continuous site updates." + "OnlineHeading": "Online no momento", + "OnlineParagraph": "O servidor de mídia está atualmente online", + "PartiallyOnlineHeading": "Parcialmente Online", + "PartiallyOnlineParagraph": "O servidor de mídia está parcialmente online.", + "MultipleServersUnavailable": "Existem {{serversUnavailable}} servidores offline de um total de {{totalServers}}.", + "SingleServerUnavailable": "Existe {{serversUnavailable}} servidor offline de um total de {{totalServers}}.", + "OfflineHeading": "Offline Agora", + "OfflineParagraph": "O servidor de mídia está atualmente offline.", + "CheckPageForUpdates": "Verifique esta página para acompanhar as atualizações do site." }, "NavigationBar": { "Discover": "Discover", - "Search": "Search", - "Requests": "Requests", - "UserManagement": "Users", - "Issues": "Issues", - "Vote": "Vote", - "Donate": "Donate!", - "DonateLibraryMaintainer": "Donate to Library Maintainer", + "Search": "Pesquisar", + "Requests": "Solicitações", + "UserManagement": "User Management", + "Issues": "Problemas", + "Vote": "Votar", + "Donate": "Doações!", + "DonateLibraryMaintainer": "Doar para o Dono da Biblioteca", "DonateTooltip": "This is how I convince my wife to let me spend my spare time developing Ombi 😁", - "UpdateAvailableTooltip": "Update Available!", - "Settings": "Settings", - "Welcome": "Welcome {{username}}", - "UpdateDetails": "Update Details", - "Logout": "Logout", - "OpenMobileApp": "Open Mobile App", - "RecentlyAdded": "Recently Added", + "UpdateAvailableTooltip": "Atualização Disponível!", + "Settings": "Configurações", + "Welcome": "Bem-vindo(a), {{username}}", + "UpdateDetails": "Detalhes da Atualização", + "Logout": "Desconectar", + "OpenMobileApp": "Abrir Aplicativo do Celular", + "RecentlyAdded": "Recentemente Adicionado", "ChangeTheme": "Change Theme", "Calendar": "Calendar", "UserPreferences": "Preferences", - "FeatureSuggestion": "Features", + "FeatureSuggestion": "Feature Suggestion", "FeatureSuggestionTooltip": "Have a great new idea? Suggest it here!", "Filter": { "Movies": "Movies", @@ -87,98 +87,98 @@ "EveningWelcome": "Good evening!" }, "Search": { - "Title": "Search", - "Paragraph": "Want to watch something that is not currently available? No problem, just search for it below and request it!", - "MoviesTab": "Movies", - "TvTab": "TV Shows", - "MusicTab": "Music", + "Title": "Pesquisar", + "Paragraph": "Quer assistir a algo que não está disponível? Sem problemas, basta pesquisar abaixo e solicitar!", + "MoviesTab": "Filmes", + "TvTab": "Séries", + "MusicTab": "Músicas", "AdvancedSearch": "You can fill in any of the below to discover new media. All of the results are sorted by popularity", "AdvancedSearchHeader": "Advanced Search", - "Suggestions": "Suggestions", - "NoResults": "Sorry, we didn't find any results!", - "DigitalDate": "Digital Release: {{date}}", - "TheatricalRelease": "Theatrical Release: {{date}}", - "ViewOnPlex": "Play On Plex", - "ViewOnEmby": "Play On Emby", + "Suggestions": "Sugestões", + "NoResults": "Desculpe, não encontramos nenhum resultado!", + "DigitalDate": "Lançamento Digital: {{date}}", + "TheatricalRelease": "Lançamento nos Cinemas: {{date}}", + "ViewOnPlex": "View On Plex", + "ViewOnEmby": "View On Emby", "ViewOnJellyfin": "Play On Jellyfin", - "RequestAdded": "Request for {{title}} has been added successfully", - "Similar": "Similar", - "Refine": "Refine", - "SearchBarPlaceholder": "Type Here to Search", + "RequestAdded": "O pedido de {{title}} foi adicionado com sucesso", + "Similar": "Semelhantes", + "Refine": "Corrigir", + "SearchBarPlaceholder": "Digite Aqui para Pesquisar", "Movies": { - "PopularMovies": "Popular Movies", - "UpcomingMovies": "Upcoming Movies", - "TopRatedMovies": "Top Rated Movies", - "NowPlayingMovies": "Now Playing Movies", - "HomePage": "Home Page", + "PopularMovies": "Filmes Populares", + "UpcomingMovies": "Filmes Em Breve", + "TopRatedMovies": "Filmes Mais Votados", + "NowPlayingMovies": "Filmes em Cartaz", + "HomePage": "Página Inicial", "Trailer": "Trailer" }, "TvShows": { "Popular": "Popular", - "Trending": "Trending", - "MostWatched": "Most Watched", - "MostAnticipated": "Most Anticipated", - "Results": "Results", - "AirDate": "Air Date:", - "AllSeasons": "All Seasons", - "FirstSeason": "First Season", - "LatestSeason": "Latest Season", - "Select": "Select ...", - "SubmitRequest": "Submit Request", + "Trending": "Tendências", + "MostWatched": "Mais Assistidos", + "MostAnticipated": "Mais Aguardados", + "Results": "Resultados", + "AirDate": "Data de Exibição:", + "AllSeasons": "Todas as Temporadas", + "FirstSeason": "Primeira temporada", + "LatestSeason": "Última Temporada", + "Select": "Selecionar...", + "SubmitRequest": "Enviar solicitação", "Season": "Season {{seasonNumber}}", - "SelectAllInSeason": "Select All in Season {{seasonNumber}}" + "SelectAllInSeason": "Selecione Tudo na Temporada {{seasonNumber}}" }, "AdvancedSearchInstructions": "Please choose what type of media you are searching for:", "YearOfRelease": "Year of Release", "KeywordSearchingDisclaimer": "Please note that Keyword Searching is very hit and miss due to the inconsistent data in TheMovieDb" }, "Requests": { - "Title": "Requests", - "Paragraph": "Below you can see yours and all other requests, as well as their download and approval status.", - "MoviesTab": "Movies", + "Title": "Solicitações", + "Paragraph": "Abaixo, você pode ver o seu e todos os outros pedidos, bem como o seu download e status de aprovação.", + "MoviesTab": "Filmes", "ArtistName": "Artist", "AlbumName": "Album Name", - "TvTab": "TV Shows", - "MusicTab": "Music", + "TvTab": "Séries", + "MusicTab": "Músicas", "RequestedBy": "Requested By", "Status": "Status", "RequestStatus": "Request status", - "Denied": " Denied:", - "TheatricalRelease": "Theatrical Release: {{date}}", - "ReleaseDate": "Released: {{date}}", - "TheatricalReleaseSort": "Theatrical Release", - "DigitalRelease": "Digital Release: {{date}}", + "Denied": " Negados:", + "TheatricalRelease": "Lançamento nos Cinemas: {{date}}", + "ReleaseDate": "Lançado: {{date}}", + "TheatricalReleaseSort": "Lançamento nos Cinemas", + "DigitalRelease": "Lançamento Digital: {{date}}", "RequestDate": "Request Date", - "QualityOverride": "Quality Override:", - "RootFolderOverride": "Root Folder Override:", - "ChangeRootFolder": "Root Folder", - "ChangeQualityProfile": "Quality Profile", - "MarkUnavailable": "Mark Unavailable", - "MarkAvailable": "Mark Available", - "Remove": "Remove", - "Deny": "Deny", + "QualityOverride": "Substituição de Qualidade:", + "RootFolderOverride": "Substituição da Pasta Raiz:", + "ChangeRootFolder": "Pasta Raiz", + "ChangeQualityProfile": "Perfil de Qualidade", + "MarkUnavailable": "Marcar como Indisponível", + "MarkAvailable": "Marcar como Disponível", + "Remove": "Remover", + "Deny": "Negar", "DenyReason": "Deny Reason", "DeniedReason": "Denied Reason", "Season": "Season", - "GridTitle": "Title", - "AirDate": "Air Date", + "GridTitle": "Título", + "AirDate": "AirDate", "GridStatus": "Status", - "ReportIssue": "Report Issue", - "Filter": "Filter", - "Sort": "Sort", - "SeasonNumberHeading": "Season: {seasonNumber}", - "SortTitleAsc": "Title ▲", - "SortTitleDesc": "Title ▼", - "SortRequestDateAsc": "Request Date ▲", - "SortRequestDateDesc": "Request Date ▼", + "ReportIssue": "Relatar Problema", + "Filter": "Filtro", + "Sort": "Ordenar por", + "SeasonNumberHeading": "Temporada: {seasonNumber}", + "SortTitleAsc": "Título ▲", + "SortTitleDesc": "Título ▼", + "SortRequestDateAsc": "Data da Solicitação ▲", + "SortRequestDateDesc": "Data da Solicitação ▼", "SortStatusAsc": "Status ▲", "SortStatusDesc": "Status ▼", "Remaining": { - "Quota": "{{remaining}}/{{total}} requests remaining", - "NextDays": "Another request will be added in {{time}} days", - "NextHours": "Another request will be added in {{time}} hours", - "NextMinutes": "Another request will be added in {{time}} minutes", - "NextMinute": "Another request will be added in {{time}} minute" + "Quota": "{{remaining}}/{{total}} solicitações restantes", + "NextDays": "Outra solicitação será adicionada em {{time}} dias", + "NextHours": "Outra solicitação será adicionada em {{time}} horas", + "NextMinutes": "Outra solicitação será adicionada em {{time}} minutos", + "NextMinute": "Outra solicitação será adicionada em {{time}} minuto" }, "AllRequests": "All Requests", "PendingRequests": "Pending Requests", @@ -207,24 +207,24 @@ "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" }, "Issues": { - "Title": "Issues", - "PendingTitle": "Pending Issues", - "InProgressTitle": "In Progress Issues", - "ResolvedTitle": "Resolved Issues", - "ColumnTitle": "Title", + "Title": "Problemas", + "PendingTitle": "Problemas pendentes", + "InProgressTitle": "Problemas em resolução", + "ResolvedTitle": "Problemas Resolvidos", + "ColumnTitle": "Título", "Count": "Count", - "Category": "Category", + "Category": "Categoria", "Status": "Status", - "Details": "Details", - "Description": "Description", - "NoComments": "No Comments!", - "MarkInProgress": "Mark In Progress", - "MarkResolved": "Mark Resolved", - "SendMessageButton": "Send", - "Subject": "Subject", - "Comments": "Comments", - "WriteMessagePlaceholder": "Write your message here...", - "ReportedBy": "Reported By", + "Details": "Detalhes", + "Description": "Descrição", + "NoComments": "Sem Comentários!", + "MarkInProgress": "Marcar como em andamento", + "MarkResolved": "Marcar como resolvido", + "SendMessageButton": "Enviar", + "Subject": "Assunto", + "Comments": "Comentários", + "WriteMessagePlaceholder": "Escreva sua mensagem aqui...", + "ReportedBy": "Reportado por", "IssueDialog": { "Title": "Report an issue", "DescriptionPlaceholder": "Please describe the issue", @@ -244,25 +244,25 @@ "UserOnDate": "{{user}} on {{date}}" }, "Filter": { - "ClearFilter": "Clear Filter", - "FilterHeaderAvailability": "Availability", + "ClearFilter": "Limpar Filtro", + "FilterHeaderAvailability": "Disponibilidade", "FilterHeaderRequestStatus": "Status", - "Approved": "Approved", - "PendingApproval": "Pending Approval", + "Approved": "Aprovado", + "PendingApproval": "Aprovação Pendente", "WatchProviders": "Watch Providers", "Keywords": "Keywords" }, "UserManagment": { - "TvRemaining": "TV: {{remaining}}/{{total}} remaining", - "MovieRemaining": "Movies: {{remaining}}/{{total}} remaining", - "MusicRemaining": "Music: {{remaining}}/{{total}} remaining", - "TvDue": "TV: {{date}}", - "MovieDue": "Movie: {{date}}", - "MusicDue": "Music: {{date}}" + "TvRemaining": "Séries: {{remaining}}/{{total}} restantes", + "MovieRemaining": "Filmes: {{remaining}}/{{total}} restantes", + "MusicRemaining": "Músicas: {{remaining}}/{{total}} restantes", + "TvDue": "Série: {{date}}", + "MovieDue": "Filme: {{date}}", + "MusicDue": "Música: {{date}}" }, "Votes": { - "CompletedVotesTab": "Voted", - "VotesTab": "Votes Needed" + "CompletedVotesTab": "Votado", + "VotesTab": "Votos necessários" }, "MediaDetails": { "Denied": "Denied", From b0f3abb9ceebdbe5d6c20af98b7355df2999eb58 Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 20 Oct 2021 18:43:16 +0100 Subject: [PATCH 77/81] =?UTF-8?q?fix(translations):=20=F0=9F=8C=90=20New?= =?UTF-8?q?=20translations=20from=20Crowdin=20[skip=20ci]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Ombi/wwwroot/translations/fr.json | 112 +++++++++++++------------- 1 file changed, 56 insertions(+), 56 deletions(-) diff --git a/src/Ombi/wwwroot/translations/fr.json b/src/Ombi/wwwroot/translations/fr.json index 56cba296f..c79076a19 100644 --- a/src/Ombi/wwwroot/translations/fr.json +++ b/src/Ombi/wwwroot/translations/fr.json @@ -14,8 +14,8 @@ "Common": { "ContinueButton": "Continuer", "Available": "Disponible", - "Approved": "Approved", - "Pending": "Pending", + "Approved": "Approuvée", + "Pending": "En attente", "PartiallyAvailable": "Partiellement disponible", "Monitored": "Suivi", "NotAvailable": "Non disponible", @@ -35,7 +35,7 @@ }, "Cancel": "Annuler", "Submit": "Envoyer", - "Update": "Update", + "Update": "Mettre à jour", "tvShow": "Série", "movie": "Film" }, @@ -196,15 +196,15 @@ "Deleted": "Éléments sélectionnés supprimés avec succès", "Approved": "Éléments sélectionnés approuvés avec succès" }, - "SuccessfullyApproved": "Successfully Approved", - "NowAvailable": "Request is now available", - "NowUnavailable": "Request is now unavailable", - "SuccessfullyReprocessed": "Successfully Re-processed the request", - "DeniedRequest": "Denied Request", - "RequestCollection": "Request Collection", - "CollectionSuccesfullyAdded": "The collection {{name}} has been successfully added!", - "NeedToSelectEpisodes": "You need to select some episodes!", - "RequestAddedSuccessfully": "Request for {{title}} has been added successfully" + "SuccessfullyApproved": "Approuvée avec succès", + "NowAvailable": "La demande est maintenant disponible", + "NowUnavailable": "La demande est maintenant indisponible", + "SuccessfullyReprocessed": "La demande a été retraitée avec succès", + "DeniedRequest": "Demande refusée", + "RequestCollection": "Demander la collection", + "CollectionSuccesfullyAdded": "La collection {{name}} a été ajoutée avec succès !", + "NeedToSelectEpisodes": "Vous devez sélectionner des épisodes !", + "RequestAddedSuccessfully": "La demande de {{title}} a été ajoutée avec succès" }, "Issues": { "Title": "Problèmes", @@ -241,7 +241,7 @@ "DeletedIssue": "Problème supprimé", "Chat": "Discuter", "Requested": "Demandé", - "UserOnDate": "{{user}} on {{date}}" + "UserOnDate": "{{user}} le {{date}}" }, "Filter": { "ClearFilter": "Effacer les filtres", @@ -282,33 +282,33 @@ "QualityProfilesSelect": "Sélectionner un Profil de Qualité", "RootFolderSelect": "Sélectionner un Dossier Racine", "LanguageProfileSelect": "Sélectionnez un profil de langue", - "Status": "Status:", + "Status": "Statut :", "StatusValues": { - "Planned": "Planned", - "In Production": "In Production", - "Released": "Released", - "Returning Series": "Returning Series", - "Ended": "Ended", - "Canceled": "Canceled" + "Planned": "Planifié", + "In Production": "En Production", + "Released": "Sorti", + "Returning Series": "Série en cours", + "Ended": "Finie", + "Canceled": "Annulée" }, - "Seasons": "Seasons:", - "Episodes": "Episodes:", - "Availability": "Availability:", + "Seasons": "Saisons :", + "Episodes": "Épisodes :", + "Availability": "Disponibilité :", "RequestStatus": "Statut de la Demande", - "Quality": "Quality:", - "RootFolderOverride": "Root Folder Override:", - "QualityOverride": "Quality Override:", - "Network": "Network:", - "Genres": "Genres:", - "FirstAired": "First Aired:", - "TheatricalRelease": "Release:", - "DigitalRelease": "Digital Release:", - "Votes": "Votes:", - "Runtime": "Runtime:", + "Quality": "Qualité :", + "RootFolderOverride": "Remplacement du répertoire racine :", + "QualityOverride": "Remplacement de la qualité :", + "Network": "Diffuseur :", + "Genres": "Genres :", + "FirstAired": "Première diffusion :", + "TheatricalRelease": "Sortie :", + "DigitalRelease": "Sortie numérique :", + "Votes": "Votes :", + "Runtime": "Durée :", "Minutes": "{{runtime}} Minutes", - "Revenue": "Revenue:", - "Budget": "Budget:", - "Keywords": "Keywords/Tags:", + "Revenue": "Recettes :", + "Budget": "Budget :", + "Keywords": "Mots-clés / Tags :", "Casts": { "CastTitle": "Casting" }, @@ -317,16 +317,16 @@ "FirstSeasonTooltip": "Cette action ne demandera que la Première Saison de cette série", "LatestSeasonTooltip": "Cette action ne demandera que la Dernière Saison de cette série", "NoEpisodes": "Il n'y a malheureusement pas encore d'informations d'épisode pour cette série !", - "SeasonNumber": "Season {{number}}" + "SeasonNumber": "Saison {{number}}" }, "SonarrConfiguration": "Configuration Sonarr", "RadarrConfiguration": "Configuration Radarr", "RequestOnBehalf": "Demander au nom de", "PleaseSelectUser": "Veuillez sélectionner un utilisateur", - "StreamingOn": "Streaming On:", - "RequestedBy": "Requested By:", - "RequestDate": "Request Date:", - "DeniedReason": "Denied Reason:", + "StreamingOn": "En streaming sur :", + "RequestedBy": "Demandé par :", + "RequestDate": "Date de la demande :", + "DeniedReason": "Motif de refus :", "ReProcessRequest": "Refaire une demande" }, "Discovery": { @@ -363,22 +363,22 @@ "MobileQRCode": "QR Code mobile", "LegacyApp": "Lancer l'ancienne application", "NoQrCode": "Veuillez contacter votre administrateur pour activer les QR codes", - "UserType": "User Type:", - "ChangeDetails": "Change Details", - "NeedCurrentPassword": "You need your current password to make any changes here", - "CurrentPassword": "Current Password", - "EmailAddress": "Email Address", - "NewPassword": "New Password", - "NewPasswordConfirm": "New Password Confirm", - "Security": "Security", - "Profile": "Profile", - "UpdatedYourInformation": "Updated your information" + "UserType": "Type d'utilisateur :", + "ChangeDetails": "Modifier les informations", + "NeedCurrentPassword": "Vous avez besoin de votre mot de passe actuel pour effectuer des modifications ici", + "CurrentPassword": "Mot de passe actuel", + "EmailAddress": "Adresse e-mail", + "NewPassword": "Nouveau mot de passe", + "NewPasswordConfirm": "Confirmation du nouveau mot de passe", + "Security": "Sécurité", + "Profile": "Profil", + "UpdatedYourInformation": "Informations mises à jour" }, "UserTypeLabel": { - "1": "Local User", - "2": "Plex User", - "3": "Emby User", - "4": "Emby Connect User", - "5": "Jellyfin User" + "1": "Utilisateur local", + "2": "Utilisateur Plex", + "3": "Utilisateur Emby", + "4": "Utilisateur Emby Connect", + "5": "Utilisateur Jellyfin" } } From b6fa61b33ddd337379b28ba1c594def4d815dcd9 Mon Sep 17 00:00:00 2001 From: tidusjar Date: Wed, 20 Oct 2021 22:25:33 +0100 Subject: [PATCH 78/81] test: :white_check_mark: Updated automation tests --- tests/cypress/support/commands.ts | 3 ++- .../details/movie/moviedetails-buttons.spec.ts | 14 +++++++++----- .../tests/discover/discover-cards-requests.spec.ts | 4 ++-- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/tests/cypress/support/commands.ts b/tests/cypress/support/commands.ts index 35d58a63e..5eba842cc 100644 --- a/tests/cypress/support/commands.ts +++ b/tests/cypress/support/commands.ts @@ -23,6 +23,7 @@ // // -- This will overwrite an existing command -- // Cypress.Commands.overwrite("visit", (originalFn, url, options) => { ... }) + import 'cypress-wait-until'; Cypress.Commands.add("landingSettings", (enabled) => { @@ -66,7 +67,7 @@ Cypress.Commands.add('removeLogin', () => { }); Cypress.Commands.add('verifyNotification', (text) => { - cy.contains(text); + cy.contains(text, {timeout: 10000}); }); Cypress.Commands.add('createUser', (username, password, claims) => { diff --git a/tests/cypress/tests/details/movie/moviedetails-buttons.spec.ts b/tests/cypress/tests/details/movie/moviedetails-buttons.spec.ts index ea175753a..cff77783b 100644 --- a/tests/cypress/tests/details/movie/moviedetails-buttons.spec.ts +++ b/tests/cypress/tests/details/movie/moviedetails-buttons.spec.ts @@ -10,7 +10,7 @@ describe("Movie Details Buttons", () => { Page.adminOptionsDialog.requestButton.click(); - cy.verifyNotification("Tom & Jerry (2021) has been successfully added"); + cy.verifyNotification("Request for Tom & Jerry has been added successfully"); Page.requestedButton.should("be.visible"); }); @@ -26,7 +26,7 @@ describe("Movie Details Buttons", () => { Page.visit("651571"); Page.requestButton.click(); - cy.verifyNotification("Breach (2020) has been successfully added"); + cy.verifyNotification("Request for Breach has been added successfully"); Page.requestedButton.should("be.visible"); }); @@ -62,7 +62,7 @@ describe("Movie Details Buttons", () => { Page.visit("793723"); Page.requestButton.click(); - cy.verifyNotification("Sentinelle (2021) has been successfully added"); + cy.verifyNotification("Request for Sentinelle has been added successfully"); Page.requestedButton.should("be.visible"); @@ -90,7 +90,7 @@ describe("Movie Details Buttons", () => { Page.adminOptionsDialog.isOpen(); Page.adminOptionsDialog.requestButton.click(); cy.verifyNotification( - "Harry Potter and the Deathly Hallows: Part 1 (2010) has been successfully added" + "Request for Harry Potter and the Deathly Hallows: Part 1 has been added successfully" ); cy.reload(); @@ -98,6 +98,10 @@ describe("Movie Details Buttons", () => { Page.markAvailableButton.should("exist"); Page.markAvailableButton.click(); + cy.waitUntil(() => { + return Page.availableButton.should("be.visible"); + }) + cy.verifyNotification("Request is now available"); Page.availableButton.should("exist"); }); @@ -111,7 +115,7 @@ describe("Movie Details Buttons", () => { Page.adminOptionsDialog.isOpen(); Page.adminOptionsDialog.requestButton.click(); cy.verifyNotification( - "Harry Potter and the Philosopher's Stone (2001) has been successfully added" + "Request for Harry Potter and the Philosopher's Stone has been added successfully" ); cy.reload(); diff --git a/tests/cypress/tests/discover/discover-cards-requests.spec.ts b/tests/cypress/tests/discover/discover-cards-requests.spec.ts index d024225f3..6b330dfa5 100644 --- a/tests/cypress/tests/discover/discover-cards-requests.spec.ts +++ b/tests/cypress/tests/discover/discover-cards-requests.spec.ts @@ -42,7 +42,7 @@ describe("Discover Cards Requests Tests", () => { Page.adminOptionsDialog.isOpen(); Page.adminOptionsDialog.requestButton.click(); - cy.verifyNotification("has been successfully added!"); + cy.verifyNotification("has been added successfully"); card.requestButton.should("not.exist"); card.availabilityText.should("have.text", "Pending"); @@ -91,7 +91,7 @@ describe("Discover Cards Requests Tests", () => { card.requestButton.should("be.visible"); card.requestButton.click(); - cy.verifyNotification("has been successfully added!"); + cy.verifyNotification("has been added successfully"); card.requestButton.should("not.exist"); card.availabilityText.should("have.text", "Pending"); From 03bc23a74e4308aa6b4c6b25636edcdeb65c1f0e Mon Sep 17 00:00:00 2001 From: tidusjar Date: Wed, 20 Oct 2021 22:46:28 +0100 Subject: [PATCH 79/81] feat(request-limits): :sparkles: Added the new request limit options to the bulk edit --- .../usermanagement-user.component.html | 6 +-- .../usermanagement.component.html | 41 +++++++++++++++++-- .../usermanagement.component.scss | 4 ++ .../usermanagement.component.ts | 20 ++++++++- 4 files changed, 63 insertions(+), 8 deletions(-) diff --git a/src/Ombi/ClientApp/src/app/usermanagement/usermanagement-user.component.html b/src/Ombi/ClientApp/src/app/usermanagement/usermanagement-user.component.html index 67152f7d9..fa79862fc 100644 --- a/src/Ombi/ClientApp/src/app/usermanagement/usermanagement-user.component.html +++ b/src/Ombi/ClientApp/src/app/usermanagement/usermanagement-user.component.html @@ -50,7 +50,7 @@
Movie Request Limit Type - + {{RequestLimitType[value]}} @@ -65,7 +65,7 @@
Episode Request Limit Type - + {{RequestLimitType[value]}} @@ -80,7 +80,7 @@
Music Request Limit Type - + {{RequestLimitType[value]}} diff --git a/src/Ombi/ClientApp/src/app/usermanagement/usermanagement.component.html b/src/Ombi/ClientApp/src/app/usermanagement/usermanagement.component.html index 02a790145..f79188ae9 100644 --- a/src/Ombi/ClientApp/src/app/usermanagement/usermanagement.component.html +++ b/src/Ombi/ClientApp/src/app/usermanagement/usermanagement.component.html @@ -118,7 +118,7 @@ - +
@@ -129,19 +129,52 @@
- +
+
Movie Request Limit - +
+
+ Movie Request Limit Type + + + {{RequestLimitType[value]}} + + +
+
+
Episode Request Limit +
+
+ Episode Request Limit Type + + + {{RequestLimitType[value]}} + + +
+
+
+
Music Request Limit +
+
+ Music Request Limit Type + + + {{RequestLimitType[value]}} + + +
+
@@ -152,7 +185,7 @@ - +
diff --git a/src/Ombi/ClientApp/src/app/usermanagement/usermanagement.component.scss b/src/Ombi/ClientApp/src/app/usermanagement/usermanagement.component.scss index df34508cf..1d5d51f69 100644 --- a/src/Ombi/ClientApp/src/app/usermanagement/usermanagement.component.scss +++ b/src/Ombi/ClientApp/src/app/usermanagement/usermanagement.component.scss @@ -87,4 +87,8 @@ table { width: 100%; +} + +::ng-deep .p-sidebar { + background: $background-dark !important; } \ No newline at end of file diff --git a/src/Ombi/ClientApp/src/app/usermanagement/usermanagement.component.ts b/src/Ombi/ClientApp/src/app/usermanagement/usermanagement.component.ts index 2bd2b3d89..81cc08485 100644 --- a/src/Ombi/ClientApp/src/app/usermanagement/usermanagement.component.ts +++ b/src/Ombi/ClientApp/src/app/usermanagement/usermanagement.component.ts @@ -1,5 +1,5 @@ import { AfterViewInit, Component, OnInit, ViewChild } from "@angular/core"; -import { ICheckbox, ICustomizationSettings, IEmailNotificationSettings, IUser } from "../interfaces"; +import { ICheckbox, ICustomizationSettings, IEmailNotificationSettings, IUser, RequestLimitType } from "../interfaces"; import { IdentityService, NotificationService, SettingsService } from "../services"; import { CustomizationFacade } from "../state/customization"; @@ -32,6 +32,12 @@ export class UserManagementComponent implements OnInit { public plexEnabled: boolean; public countries: string[]; + public requestLimitTypes: RequestLimitType[] = [RequestLimitType.Day, RequestLimitType.Week, RequestLimitType.Month]; + public RequestLimitType = RequestLimitType; + + public musicRequestLimitType: RequestLimitType; + public episodeRequestLimitType: RequestLimitType; + public movieRequestLimitType: RequestLimitType; constructor(private identityService: IdentityService, private settingsService: SettingsService, @@ -95,6 +101,15 @@ export class UserManagementComponent implements OnInit { if (this.bulkStreaming) { x.streamingCountry = this.bulkStreaming; } + if (this.musicRequestLimitType) { + x.musicRequestLimitType = this.musicRequestLimitType; + } + if (this.episodeRequestLimitType) { + x.episodeRequestLimitType = this.episodeRequestLimitType; + } + if (this.movieRequestLimitType) { + x.movieRequestLimitType = this.movieRequestLimitType; + } this.identityService.updateUser(x).subscribe(y => { if (!y.successful) { this.notificationService.error(`Could not update user ${x.userName}. Reason ${y.errors[0]}`); @@ -108,6 +123,9 @@ export class UserManagementComponent implements OnInit { this.bulkEpisodeLimit = undefined; this.bulkMusicLimit = undefined; this.bulkStreaming = undefined; + this.movieRequestLimitType = undefined; + this.episodeRequestLimitType = undefined; + this.musicRequestLimitType = undefined; } public isAllSelected() { From 01d4f4d718fe85ac181dae52565fb1b427965b4f Mon Sep 17 00:00:00 2001 From: tidusjar Date: Wed, 20 Oct 2021 22:58:10 +0100 Subject: [PATCH 80/81] feat(request-limits): :sparkles: Added the new request limit options into the user importer --- .../Jobs/Emby/EmbyUserImporter.cs | 4 ++ .../Jobs/Plex/PlexUserImporter.cs | 4 ++ .../Settings/Models/UserManagementSettings.cs | 7 +++- .../ClientApp/src/app/interfaces/ISettings.ts | 5 +++ .../usermanagement.component.html | 39 ++++++++++++++++--- .../usermanagement.component.ts | 9 +++-- 6 files changed, 59 insertions(+), 9 deletions(-) diff --git a/src/Ombi.Schedule/Jobs/Emby/EmbyUserImporter.cs b/src/Ombi.Schedule/Jobs/Emby/EmbyUserImporter.cs index 4b684b8ab..e85cdb9c4 100644 --- a/src/Ombi.Schedule/Jobs/Emby/EmbyUserImporter.cs +++ b/src/Ombi.Schedule/Jobs/Emby/EmbyUserImporter.cs @@ -117,7 +117,11 @@ namespace Ombi.Schedule.Jobs.Emby ProviderUserId = embyUser.Id, Alias = isConnectUser ? embyUser.Name : string.Empty, MovieRequestLimit = userManagementSettings.MovieRequestLimit, + MovieRequestLimitType = userManagementSettings.MovieRequestLimitType, EpisodeRequestLimit = userManagementSettings.EpisodeRequestLimit, + EpisodeRequestLimitType = userManagementSettings.EpisodeRequestLimitType, + MusicRequestLimit = userManagementSettings.MusicRequestLimit, + MusicRequestLimitType = userManagementSettings.MusicRequestLimitType, StreamingCountry = userManagementSettings.DefaultStreamingCountry }; var result = await _userManager.CreateAsync(newUser); diff --git a/src/Ombi.Schedule/Jobs/Plex/PlexUserImporter.cs b/src/Ombi.Schedule/Jobs/Plex/PlexUserImporter.cs index 1e484b237..56872c1a8 100644 --- a/src/Ombi.Schedule/Jobs/Plex/PlexUserImporter.cs +++ b/src/Ombi.Schedule/Jobs/Plex/PlexUserImporter.cs @@ -104,7 +104,11 @@ namespace Ombi.Schedule.Jobs.Plex Email = plexUser?.Email ?? string.Empty, Alias = string.Empty, MovieRequestLimit = userManagementSettings.MovieRequestLimit, + MovieRequestLimitType = userManagementSettings.MovieRequestLimitType, EpisodeRequestLimit = userManagementSettings.EpisodeRequestLimit, + EpisodeRequestLimitType = userManagementSettings.EpisodeRequestLimitType, + MusicRequestLimit = userManagementSettings.MusicRequestLimit, + MusicRequestLimitType = userManagementSettings.MusicRequestLimitType, StreamingCountry = userManagementSettings.DefaultStreamingCountry }; _log.LogInformation("Creating Plex user {0}", newUser.UserName); diff --git a/src/Ombi.Settings/Settings/Models/UserManagementSettings.cs b/src/Ombi.Settings/Settings/Models/UserManagementSettings.cs index ff6cff278..3547812ee 100644 --- a/src/Ombi.Settings/Settings/Models/UserManagementSettings.cs +++ b/src/Ombi.Settings/Settings/Models/UserManagementSettings.cs @@ -1,4 +1,5 @@ -using System.Collections.Generic; +using Ombi.Store.Entities; +using System.Collections.Generic; namespace Ombi.Settings.Settings.Models { @@ -9,7 +10,11 @@ namespace Ombi.Settings.Settings.Models public bool ImportEmbyUsers { get; set; } public bool ImportJellyfinUsers { get; set; } public int MovieRequestLimit { get; set; } + public RequestLimitType MovieRequestLimitType { get; set; } = RequestLimitType.Week; public int EpisodeRequestLimit { get; set; } + public RequestLimitType EpisodeRequestLimitType { get; set; } = RequestLimitType.Week; + public int MusicRequestLimit { get; set; } + public RequestLimitType MusicRequestLimitType { get; set; } = RequestLimitType.Week; public string DefaultStreamingCountry { get; set; } = "US"; public List DefaultRoles { get; set; } = new List(); public List BannedPlexUserIds { get; set; } = new List(); diff --git a/src/Ombi/ClientApp/src/app/interfaces/ISettings.ts b/src/Ombi/ClientApp/src/app/interfaces/ISettings.ts index 083425deb..919e6a271 100644 --- a/src/Ombi/ClientApp/src/app/interfaces/ISettings.ts +++ b/src/Ombi/ClientApp/src/app/interfaces/ISettings.ts @@ -1,4 +1,5 @@ import { ISettings } from "./ICommon"; +import { RequestLimitType } from "."; export interface IExternalSettings extends ISettings { ssl: boolean; @@ -247,10 +248,14 @@ export interface IUserManagementSettings extends ISettings { defaultRoles: string[]; movieRequestLimit: number; episodeRequestLimit: number; + musicRequestLimit: number; bannedPlexUserIds: string[]; bannedEmbyUserIds: string[]; bannedJellyfinUserIds: string[]; defaultStreamingCountry: string; + movieRequestLimitType: RequestLimitType; + episodeRequestLimitType: RequestLimitType; + musicRequestLimitType: RequestLimitType; } export interface IAbout { diff --git a/src/Ombi/ClientApp/src/app/settings/usermanagement/usermanagement.component.html b/src/Ombi/ClientApp/src/app/settings/usermanagement/usermanagement.component.html index ca6f22b3b..266c725cb 100644 --- a/src/Ombi/ClientApp/src/app/settings/usermanagement/usermanagement.component.html +++ b/src/Ombi/ClientApp/src/app/settings/usermanagement/usermanagement.component.html @@ -39,18 +39,18 @@
Import Jellyfin Users
- +

Jellyfin Users excluded from Import

- +
-

Default Roles

- +

Default Roles

+
@@ -60,7 +60,10 @@
-

Default Request Limits

+

Default Request Limits

+ +
+
@@ -68,12 +71,38 @@
+ Movie Request Limit Type + + + {{RequestLimitType[value]}} + + +
+
+ Episode Request Limit Type + + + {{RequestLimitType[value]}} + + +
+ +
+ +
+
+ Music Request Limit Type + + + {{RequestLimitType[value]}} + + diff --git a/src/Ombi/ClientApp/src/app/settings/usermanagement/usermanagement.component.ts b/src/Ombi/ClientApp/src/app/settings/usermanagement/usermanagement.component.ts index 7b2a5e3e0..4956d5179 100644 --- a/src/Ombi/ClientApp/src/app/settings/usermanagement/usermanagement.component.ts +++ b/src/Ombi/ClientApp/src/app/settings/usermanagement/usermanagement.component.ts @@ -1,8 +1,8 @@ import { Component, OnInit } from "@angular/core"; +import { EmbyService, IdentityService, JellyfinService, JobService, NotificationService, PlexService, SettingsService } from "../../services"; +import { ICheckbox, IUserManagementSettings, RequestLimitType } from "../../interfaces"; -import { ICheckbox, IUserManagementSettings } from "../../interfaces"; import { IUsersModel } from "../../interfaces"; -import { EmbyService, JellyfinService, IdentityService, JobService, NotificationService, PlexService, SettingsService } from "../../services"; @Component({ templateUrl: "./usermanagement.component.html", @@ -31,6 +31,9 @@ export class UserManagementComponent implements OnInit { public enableImportButton = false; public countries: string[]; + public requestLimitTypes: RequestLimitType[] = [RequestLimitType.Day, RequestLimitType.Week, RequestLimitType.Month]; + public RequestLimitType = RequestLimitType; + constructor(private readonly settingsService: SettingsService, private readonly notificationService: NotificationService, private readonly identityService: IdentityService, @@ -120,7 +123,7 @@ export class UserManagementComponent implements OnInit { if (x === true) { this.notificationService.success("Successfully saved the User Management Settings"); } else { - this.notificationService.success( "There was an error when saving the Ombi settings"); + this.notificationService.success( "There was an error when saving the settings"); } }); } From 881561eaacf94e94d623a4972476eb3c92592d82 Mon Sep 17 00:00:00 2001 From: Conventional Changelog Action Date: Wed, 20 Oct 2021 22:25:58 +0000 Subject: [PATCH 81/81] chore(release): :rocket: v4.3.0 --- CHANGELOG.md | 40 +++++++++++++++++++++++++++++++--------- version.json | 2 +- 2 files changed, 32 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8d61ef642..d74042ee1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,34 @@ +# [4.3.0](https://github.com/Ombi-app/Ombi/compare/v4.2.13...v4.3.0) (2021-10-20) + + +### Bug Fixes + +* **translations:** 🌐 New translations from Crowdin [skip ci] ([b0f3abb](https://github.com/Ombi-app/Ombi/commit/b0f3abb9ceebdbe5d6c20af98b7355df2999eb58)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([77d017b](https://github.com/Ombi-app/Ombi/commit/77d017b3d8ffd1714a2f6efecc8c900d56d062e4)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([f6e9784](https://github.com/Ombi-app/Ombi/commit/f6e9784367d3678d899ed79bef6caa52005b6661)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([601a877](https://github.com/Ombi-app/Ombi/commit/601a87762a2ad393ee5fa2fe52052ceeeefb1bef)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([a4a80ba](https://github.com/Ombi-app/Ombi/commit/a4a80ba4da49733a65e691003646c0f349bd4c5f)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([2961319](https://github.com/Ombi-app/Ombi/commit/2961319f61e95b2871480152b86ddca3375576a1)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([fc8d108](https://github.com/Ombi-app/Ombi/commit/fc8d108b660d53f499538328bfc271b05ac47d2b)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([1e03651](https://github.com/Ombi-app/Ombi/commit/1e03651c3b0eb77e45f9f6c55d31ee672eacd51e)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([c0dd327](https://github.com/Ombi-app/Ombi/commit/c0dd327426514e305a88750d7c3deb21c194108f)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([2156129](https://github.com/Ombi-app/Ombi/commit/2156129f175335746f204bb123035c070f518e96)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([aef0368](https://github.com/Ombi-app/Ombi/commit/aef0368de3aec306245bd1b16bc0de596a20d451)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([a38090b](https://github.com/Ombi-app/Ombi/commit/a38090b8dde17d1d150af0bca2830ea45d013a0e)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([c5f1d33](https://github.com/Ombi-app/Ombi/commit/c5f1d3355758a5c3648479d44e50397c7f6c1a9d)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([3846d56](https://github.com/Ombi-app/Ombi/commit/3846d56a6e561a1b1dc65c385151d90fdd6217ee)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([dafe9c1](https://github.com/Ombi-app/Ombi/commit/dafe9c1a19d84f00c13f0a51ba90927c24282926)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([edb418a](https://github.com/Ombi-app/Ombi/commit/edb418a6f05887c68a0c24c48decc691996f97e4)) +* **translations:** 🌐 New translations from Crowdin [skip ci] ([dadabf9](https://github.com/Ombi-app/Ombi/commit/dadabf93e1582a0c39321fd9bf3de3fb11e3f406)) + + +### Features + +* **request-limits:** :sparkles: Added the new request limit options into the user importer ([01d4f4d](https://github.com/Ombi-app/Ombi/commit/01d4f4d718fe85ac181dae52565fb1b427965b4f)) +* **request-limits:** :sparkles: Added the new request limit options to the bulk edit ([03bc23a](https://github.com/Ombi-app/Ombi/commit/03bc23a74e4308aa6b4c6b25636edcdeb65c1f0e)) + + + ## [4.2.13](https://github.com/Ombi-app/Ombi/compare/v4.2.12...v4.2.13) (2021-10-20) @@ -31,12 +62,3 @@ -## [4.2.9](https://github.com/Ombi-app/Ombi/compare/v4.2.8...v4.2.9) (2021-10-15) - - -### Bug Fixes - -* :fire: Really fix the base url issue this time ([9f36923](https://github.com/Ombi-app/Ombi/commit/9f36923c51bfabf9cb026f2da14f9947050af0d9)) - - - diff --git a/version.json b/version.json index 64f65d831..0f81474a8 100644 --- a/version.json +++ b/version.json @@ -1,3 +1,3 @@ { - "version": "4.2.13" + "version": "4.3.0" } \ No newline at end of file