From 2d0afb29d37798a626e3f182571ccce43d80063c Mon Sep 17 00:00:00 2001 From: Alex Zoitos Date: Tue, 8 Dec 2020 22:34:09 -0500 Subject: [PATCH] fix(frontend): update overflow issues with seasons + email (#217) * fix(frontend): update overflow issues with seasons + email. Add all message for full seasons bug #216 * fix: update i18n json files --- package.json | 2 +- src/components/RequestCard/index.tsx | 21 +- src/i18n/locale/de.json | 390 +++++++++++++----- src/i18n/locale/en.json | 1 + src/i18n/locale/fr.json | 1 + src/i18n/locale/ja.json | 1 + src/i18n/locale/nb_NO.json | 571 ++++++++++++++------------- src/styles/globals.css | 11 + 8 files changed, 616 insertions(+), 382 deletions(-) diff --git a/package.json b/package.json index 7b81c3bed..b54dd6154 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "build": "yarn build:next && yarn build:server", "lint": "eslint \"./server/**/*.{ts,tsx}\" \"./src/**/*.{ts,tsx}\"", "start": "NODE_ENV=production node dist/index.js", - "i18n:extract": "extract-messages -l=en,ja,fr -o src/i18n/locale -d en --flat true './src/**/!(*.test).{ts,tsx}'", + "i18n:extract": "extract-messages -l=en,ja,fr,nb_NO,de -o src/i18n/locale -d en --flat true --overwriteDefault false './src/**/!(*.test).{ts,tsx}'", "migration:generate": "ts-node --project server/tsconfig.json ./node_modules/.bin/typeorm migration:generate", "migration:run": "ts-node --project server/tsconfig.json ./node_modules/.bin/typeorm migration:run", "format": "prettier --write ." diff --git a/src/components/RequestCard/index.tsx b/src/components/RequestCard/index.tsx index 5d9f8c7f0..a3bc520da 100644 --- a/src/components/RequestCard/index.tsx +++ b/src/components/RequestCard/index.tsx @@ -19,6 +19,7 @@ import StatusBadge from '../StatusBadge'; const messages = defineMessages({ requestedby: 'Requested by {username}', seasons: 'Seasons', + all: 'All', }); const isMovie = (movie: MovieDetails | TvDetails): movie is MovieDetails => { @@ -103,7 +104,7 @@ const RequestCard: React.FC = ({ request }) => { {isMovie(title) ? title.title : title.name} -
+
{intl.formatMessage(messages.requestedby, { username: requestData.requestedBy.username, })} @@ -116,11 +117,21 @@ const RequestCard: React.FC = ({ request }) => { {request.seasons.length > 0 && (
{intl.formatMessage(messages.seasons)} - {request.seasons.map((season) => ( - - {season.seasonNumber} + {!isMovie(title) && + title.seasons.filter((season) => season.seasonNumber !== 0) + .length === request.seasons.length ? ( + + {intl.formatMessage(messages.all)} - ))} + ) : ( +
+ {request.seasons.map((season) => ( + + {season.seasonNumber} + + ))} +
+ )}
)} {requestData.status === MediaRequestStatus.PENDING && diff --git a/src/i18n/locale/de.json b/src/i18n/locale/de.json index 83862ef8b..abdc58920 100644 --- a/src/i18n/locale/de.json +++ b/src/i18n/locale/de.json @@ -1,95 +1,303 @@ { - "components.RequestModal.request": "Antrag", - "components.RequestModal.cancelrequest": "Dadurch wird Ihre Antrag entfernt. Sind Sie sicher, dass Sie weitermachen wollen?", - "components.RequestModal.cancelling": "Abbrechen …", - "components.RequestList.showingresults": "Anzeigen von {from} bis {to} von {total} Ergebnissen", - "components.RequestModal.numberofepisodes": "Anzahl der Folgen", - "components.RequestModal.extras": "Extras", - "components.RequestModal.close": "Schließen", - "components.RequestList.requests": "Anträge", - "components.RequestList.requestedAt": "Antrag erstellt um", - "components.RequestList.previous": "Vorherige", - "components.RequestList.next": "Nächste", - "components.RequestList.modifiedBy": "Zuletzt geändert von", - "components.RequestList.mediaInfo": "Medieninformationen", - "components.RequestList.RequestItem.seasons": "Staffeln", - "components.RequestList.RequestItem.requestedby": "Antrag von {username}", - "components.RequestList.RequestItem.notavailable": "entf.", - "components.RequestCard.seasons": "Staffeln", - "components.RequestCard.requestedby": "Antrag von {username}", - "components.RequestBlock.seasons": "Staffeln", - "components.PlexLoginButton.loginwithplex": "Anmeldung mit Plex", - "components.PlexLoginButton.loggingin": "Wird angemeldet …", - "components.PlexLoginButton.loading": "Wird geladen …", - "components.MovieDetails.viewrequest": "Antrag anzeigen", - "components.MovieDetails.userrating": "Benutzerbewertung", - "components.MovieDetails.unavailable": "Nicht verfügbar", - "components.MovieDetails.status": "Status", - "components.MovieDetails.similarsubtext": "Andere Filme, die {title} ähneln", - "components.MovieDetails.similar": "Ähnliche Titel", - "components.MovieDetails.runtime": "{minutes} Minuten", - "components.MovieDetails.revenue": "Einnahmen", - "components.MovieDetails.request": "Antrag", - "components.MovieDetails.releasedate": "Erscheinungsdatum", - "components.MovieDetails.recommendationssubtext": "Wenn Ihnen {title} gefallen hat, könnte Ihnen auch gefallen …", - "components.MovieDetails.recommendations": "Empfehlungen", - "components.MovieDetails.pending": "Ausstehend", - "components.MovieDetails.overviewunavailable": "Übersicht nicht verfügbar", - "components.MovieDetails.overview": "Übersicht", - "components.MovieDetails.originallanguage": "Originalsprache", - "components.MovieDetails.manageModalRequests": "Anträge", - "components.MovieDetails.manageModalNoRequests": "Keine Anträge", - "components.MovieDetails.manageModalClearMediaWarning": "Dadurch werden alle Mediendaten einschließlich aller Anträge für dieses Element entfernt. Diese Aktion ist irreversibel. Wenn dieses Element in Ihrer Plex-Bibliothek vorhanden ist, werden die Medieninformationen bei der nächsten Synchronisierung neu erstellt.", - "components.MovieDetails.cancelrequest": "Antrag abbrechen", - "components.Layout.Sidebar.requests": "Anträge", - "components.Discover.recentrequests": "Letzte Anträge", - "components.Discover.nopending": "Keine ausstehenden Anträge", - "components.MovieDetails.manageModalTitle": "Filme verwalten", - "components.MovieDetails.manageModalClearMedia": "Alle Mediendaten löschen", - "components.MovieDetails.decline": "Ablehnen", - "components.MovieDetails.cast": "Besetzung", - "components.MovieDetails.budget": "Budget", - "components.MovieDetails.available": "Verfügbar", - "components.MovieDetails.approve": "Genehmigen", - "components.Login.signinplex": "Melden Sie sich an, um fortzufahren", - "components.Layout.alphawarning": "Dies ist ALPHA-Software. Fast alles muss fast kaputt und/oder instabil sein. Bitte melden Sie Probleme auf der GitHub-Seite!", - "components.Layout.UserDropdown.signout": "Abmelden", - "components.Layout.Sidebar.users": "Benutzer", - "components.UserEdit.email": "E-Mail", - "components.Settings.Notifications.validationFromRequired": "Sie müssen eine E-Mail-Absenderadresse angeben", - "components.Settings.Notifications.emailsender": "E-Mail-Absenderadresse", - "components.Layout.Sidebar.settings": "Einstellungen", - "components.Layout.Sidebar.dashboard": "Entdecken", - "components.Layout.SearchInput.searchPlaceholder": "Nach Filme und Fernsehsendungen suchen", - "components.Layout.LanguagePicker.changelanguage": "Sprache ändern", - "components.Discover.upcomingmovies": "Bald erscheinende Filme", - "components.Discover.upcoming": "Bald erscheinende Filme", - "components.Discover.trending": "Trends", - "components.Discover.recentlyAdded": "Kürzlich hinzugefügt", - "components.Discover.populartv": "Beliebte Serie", - "components.Discover.popularmovies": "Beliebte Filme", - "components.Discover.discovertv": "Beliebte Serie", "components.Discover.discovermovies": "Beliebte Filme", - "components.Settings.RadarrModal.apiKey": "API-Schlüssel", - "components.Settings.RadarrModal.add": "Server hinzufügen", - "components.Settings.Notifications.validationSmtpHostRequired": "Sie müssen einen SMTP-Host bereitstellen", - "components.Settings.Notifications.smtpPort": "SMTP-Port", - "components.Settings.Notifications.smtpHost": "SMTP-Host", - "components.Settings.Notifications.saving": "Speichern …", - "components.Settings.Notifications.save": "Änderungen speichern", - "components.Settings.Notifications.enableSsl": "SSL aktivieren", - "components.Settings.Notifications.agentenabled": "Agent aktiviert", - "components.Search.searchresults": "Suchergebnisse", - "components.RequestModal.status": "Status", - "components.RequestModal.selectseason": "Staffel(n) auswählen", - "components.RequestModal.seasonnumber": "Staffel {number}", - "components.RequestModal.season": "Staffel", - "components.RequestModal.requestfrom": "Derzeit ist ein Antrag von {username} ausstehend", - "components.RequestModal.requestadmin": "Ihr Antrag wird sofort genehmigt.", - "components.RequestModal.requestSuccess": "{title} angefordert.", - "components.RequestModal.requestCancel": "Antrag für {title} storniert", - "components.RequestModal.pendingrequest": "Ausstehender Antrag für {title}", - "components.RequestModal.notrequested": "Nicht angefordert", + "components.Discover.discovertv": "Beliebte Serie", + "components.Discover.nopending": "Keine ausstehenden Anträge", + "components.Discover.popularmovies": "Beliebte Filme", + "components.Discover.populartv": "Beliebte Serie", + "components.Discover.recentlyAdded": "Kürzlich hinzugefügt", + "components.Discover.recentrequests": "Letzte Anträge", + "components.Discover.trending": "Trends", + "components.Discover.upcoming": "Bald erscheinende Filme", + "components.Discover.upcomingmovies": "Bald erscheinende Filme", + "components.Layout.LanguagePicker.changelanguage": "Sprache ändern", + "components.Layout.SearchInput.searchPlaceholder": "Nach Filme und Fernsehsendungen suchen", + "components.Layout.Sidebar.dashboard": "Entdecken", + "components.Layout.Sidebar.requests": "Anträge", + "components.Layout.Sidebar.settings": "Einstellungen", + "components.Layout.Sidebar.users": "Benutzer", + "components.Layout.UserDropdown.signout": "Abmelden", + "components.Layout.alphawarning": "Dies ist ALPHA-Software. Fast alles muss fast kaputt und/oder instabil sein. Bitte melden Sie Probleme auf der GitHub-Seite!", + "components.Login.signinplex": "Melden Sie sich an, um fortzufahren", + "components.MovieDetails.approve": "Genehmigen", + "components.MovieDetails.available": "Verfügbar", + "components.MovieDetails.budget": "Budget", + "components.MovieDetails.cancelrequest": "Antrag abbrechen", + "components.MovieDetails.cast": "Besetzung", + "components.MovieDetails.decline": "Ablehnen", + "components.MovieDetails.manageModalClearMedia": "Alle Mediendaten löschen", + "components.MovieDetails.manageModalClearMediaWarning": "Dadurch werden alle Mediendaten einschließlich aller Anträge für dieses Element entfernt. Diese Aktion ist irreversibel. Wenn dieses Element in Ihrer Plex-Bibliothek vorhanden ist, werden die Medieninformationen bei der nächsten Synchronisierung neu erstellt.", + "components.MovieDetails.manageModalNoRequests": "Keine Anträge", + "components.MovieDetails.manageModalRequests": "Anträge", + "components.MovieDetails.manageModalTitle": "Filme verwalten", + "components.MovieDetails.originallanguage": "Originalsprache", + "components.MovieDetails.overview": "Übersicht", + "components.MovieDetails.overviewunavailable": "Übersicht nicht verfügbar", + "components.MovieDetails.pending": "Ausstehend", + "components.MovieDetails.recommendations": "Empfehlungen", + "components.MovieDetails.recommendationssubtext": "Wenn Ihnen {title} gefallen hat, könnte Ihnen auch gefallen …", + "components.MovieDetails.releasedate": "Erscheinungsdatum", + "components.MovieDetails.request": "Antrag", + "components.MovieDetails.revenue": "Einnahmen", + "components.MovieDetails.runtime": "{minutes} Minuten", + "components.MovieDetails.similar": "Ähnliche Titel", + "components.MovieDetails.similarsubtext": "Andere Filme, die {title} ähneln", + "components.MovieDetails.status": "Status", + "components.MovieDetails.unavailable": "Nicht verfügbar", + "components.MovieDetails.userrating": "Benutzerbewertung", + "components.MovieDetails.viewrequest": "Antrag anzeigen", + "components.PlexLoginButton.loading": "Wird geladen …", + "components.PlexLoginButton.loggingin": "Wird angemeldet …", + "components.PlexLoginButton.loginwithplex": "Anmeldung mit Plex", + "components.RequestBlock.seasons": "Staffeln", + "components.RequestCard.all": "", + "components.RequestCard.requestedby": "Antrag von {username}", + "components.RequestCard.seasons": "Staffeln", + "components.RequestList.RequestItem.notavailable": "entf.", + "components.RequestList.RequestItem.requestedby": "Antrag von {username}", + "components.RequestList.RequestItem.seasons": "Staffeln", + "components.RequestList.mediaInfo": "Medieninformationen", + "components.RequestList.modifiedBy": "Zuletzt geändert von", + "components.RequestList.next": "Nächste", + "components.RequestList.previous": "Vorherige", + "components.RequestList.requestedAt": "Antrag erstellt um", + "components.RequestList.requests": "Anträge", + "components.RequestList.showingresults": "Anzeigen von {from} bis {to} von {total} Ergebnissen", + "components.RequestList.status": "Status", "components.RequestModal.cancel": "Antrag abbrechen", - "components.RequestList.status": "Status" + "components.RequestModal.cancelling": "Abbrechen …", + "components.RequestModal.cancelrequest": "Dadurch wird Ihre Antrag entfernt. Sind Sie sicher, dass Sie weitermachen wollen?", + "components.RequestModal.close": "Schließen", + "components.RequestModal.extras": "Extras", + "components.RequestModal.notrequested": "Nicht angefordert", + "components.RequestModal.numberofepisodes": "Anzahl der Folgen", + "components.RequestModal.pendingrequest": "Ausstehender Antrag für {title}", + "components.RequestModal.request": "Antrag", + "components.RequestModal.requestCancel": "Antrag für {title} storniert", + "components.RequestModal.requestSuccess": "{title} angefordert.", + "components.RequestModal.requestadmin": "Ihr Antrag wird sofort genehmigt.", + "components.RequestModal.requestfrom": "Derzeit ist ein Antrag von {username} ausstehend", + "components.RequestModal.requesting": "", + "components.RequestModal.requestseasons": "", + "components.RequestModal.requesttitle": "", + "components.RequestModal.season": "Staffel", + "components.RequestModal.seasonnumber": "Staffel {number}", + "components.RequestModal.selectseason": "Staffel(n) auswählen", + "components.RequestModal.status": "Status", + "components.Search.searchresults": "Suchergebnisse", + "components.Settings.Notifications.agentenabled": "Agent aktiviert", + "components.Settings.Notifications.authPass": "", + "components.Settings.Notifications.authUser": "", + "components.Settings.Notifications.emailsender": "E-Mail-Absenderadresse", + "components.Settings.Notifications.enableSsl": "SSL aktivieren", + "components.Settings.Notifications.save": "Änderungen speichern", + "components.Settings.Notifications.saving": "Speichern …", + "components.Settings.Notifications.smtpHost": "SMTP-Host", + "components.Settings.Notifications.smtpPort": "SMTP-Port", + "components.Settings.Notifications.validationFromRequired": "Sie müssen eine E-Mail-Absenderadresse angeben", + "components.Settings.Notifications.validationSmtpHostRequired": "Sie müssen einen SMTP-Host bereitstellen", + "components.Settings.Notifications.validationSmtpPortRequired": "", + "components.Settings.Notifications.validationWebhookUrlRequired": "", + "components.Settings.Notifications.webhookUrl": "", + "components.Settings.Notifications.webhookUrlPlaceholder": "", + "components.Settings.RadarrModal.add": "Server hinzufügen", + "components.Settings.RadarrModal.apiKey": "API-Schlüssel", + "components.Settings.RadarrModal.apiKeyPlaceholder": "", + "components.Settings.RadarrModal.baseUrl": "", + "components.Settings.RadarrModal.baseUrlPlaceholder": "", + "components.Settings.RadarrModal.createradarr": "", + "components.Settings.RadarrModal.defaultserver": "", + "components.Settings.RadarrModal.editradarr": "", + "components.Settings.RadarrModal.hostname": "", + "components.Settings.RadarrModal.minimumAvailability": "", + "components.Settings.RadarrModal.port": "", + "components.Settings.RadarrModal.qualityprofile": "", + "components.Settings.RadarrModal.rootfolder": "", + "components.Settings.RadarrModal.save": "", + "components.Settings.RadarrModal.saving": "", + "components.Settings.RadarrModal.selectMinimumAvailability": "", + "components.Settings.RadarrModal.selectQualityProfile": "", + "components.Settings.RadarrModal.selectRootFolder": "", + "components.Settings.RadarrModal.server4k": "", + "components.Settings.RadarrModal.servername": "", + "components.Settings.RadarrModal.servernamePlaceholder": "", + "components.Settings.RadarrModal.ssl": "", + "components.Settings.RadarrModal.test": "", + "components.Settings.RadarrModal.testing": "", + "components.Settings.RadarrModal.toastRadarrTestFailure": "", + "components.Settings.RadarrModal.toastRadarrTestSuccess": "", + "components.Settings.RadarrModal.validationApiKeyRequired": "", + "components.Settings.RadarrModal.validationHostnameRequired": "", + "components.Settings.RadarrModal.validationPortRequired": "", + "components.Settings.RadarrModal.validationProfileRequired": "", + "components.Settings.RadarrModal.validationRootFolderRequired": "", + "components.Settings.SonarrModal.add": "", + "components.Settings.SonarrModal.apiKey": "", + "components.Settings.SonarrModal.apiKeyPlaceholder": "", + "components.Settings.SonarrModal.baseUrl": "", + "components.Settings.SonarrModal.baseUrlPlaceholder": "", + "components.Settings.SonarrModal.createsonarr": "", + "components.Settings.SonarrModal.defaultserver": "", + "components.Settings.SonarrModal.editsonarr": "", + "components.Settings.SonarrModal.hostname": "", + "components.Settings.SonarrModal.port": "", + "components.Settings.SonarrModal.qualityprofile": "", + "components.Settings.SonarrModal.rootfolder": "", + "components.Settings.SonarrModal.save": "", + "components.Settings.SonarrModal.saving": "", + "components.Settings.SonarrModal.seasonfolders": "", + "components.Settings.SonarrModal.selectQualityProfile": "", + "components.Settings.SonarrModal.selectRootFolder": "", + "components.Settings.SonarrModal.server4k": "", + "components.Settings.SonarrModal.servername": "", + "components.Settings.SonarrModal.servernamePlaceholder": "", + "components.Settings.SonarrModal.ssl": "", + "components.Settings.SonarrModal.test": "", + "components.Settings.SonarrModal.testing": "", + "components.Settings.SonarrModal.toastRadarrTestFailure": "", + "components.Settings.SonarrModal.toastRadarrTestSuccess": "", + "components.Settings.SonarrModal.validationApiKeyRequired": "", + "components.Settings.SonarrModal.validationHostnameRequired": "", + "components.Settings.SonarrModal.validationPortRequired": "", + "components.Settings.SonarrModal.validationProfileRequired": "", + "components.Settings.SonarrModal.validationRootFolderRequired": "", + "components.Settings.activeProfile": "", + "components.Settings.addradarr": "", + "components.Settings.address": "", + "components.Settings.addsonarr": "", + "components.Settings.apikey": "", + "components.Settings.applicationurl": "", + "components.Settings.cancelscan": "", + "components.Settings.copied": "", + "components.Settings.currentlibrary": "", + "components.Settings.default": "", + "components.Settings.default4k": "", + "components.Settings.delete": "", + "components.Settings.deleteserverconfirm": "", + "components.Settings.edit": "", + "components.Settings.generalsettings": "", + "components.Settings.generalsettingsDescription": "", + "components.Settings.hostname": "", + "components.Settings.jobname": "", + "components.Settings.librariesRemaining": "", + "components.Settings.manualscan": "", + "components.Settings.manualscanDescription": "", + "components.Settings.menuAbout": "", + "components.Settings.menuGeneralSettings": "", + "components.Settings.menuJobs": "", + "components.Settings.menuLogs": "", + "components.Settings.menuNotifications": "", + "components.Settings.menuPlexSettings": "", + "components.Settings.menuServices": "", + "components.Settings.nextexecution": "", + "components.Settings.notificationsettings": "", + "components.Settings.notificationsettingsDescription": "", + "components.Settings.notrunning": "", + "components.Settings.plexlibraries": "", + "components.Settings.plexlibrariesDescription": "", + "components.Settings.plexsettings": "", + "components.Settings.plexsettingsDescription": "", + "components.Settings.port": "", + "components.Settings.radarrSettingsDescription": "", + "components.Settings.radarrsettings": "", + "components.Settings.runnow": "", + "components.Settings.save": "", + "components.Settings.saving": "", + "components.Settings.servername": "", + "components.Settings.servernamePlaceholder": "", + "components.Settings.sonarrSettingsDescription": "", + "components.Settings.sonarrsettings": "", + "components.Settings.ssl": "", + "components.Settings.startscan": "", + "components.Settings.sync": "", + "components.Settings.syncing": "", + "components.Setup.configureplex": "", + "components.Setup.configureservices": "", + "components.Setup.continue": "", + "components.Setup.finish": "", + "components.Setup.finishing": "", + "components.Setup.loginwithplex": "", + "components.Setup.signinMessage": "", + "components.Setup.welcome": "", + "components.Slider.noresults": "", + "components.TitleCard.movie": "", + "components.TitleCard.tvshow": "", + "components.TvDetails.approve": "", + "components.TvDetails.approverequests": "", + "components.TvDetails.available": "", + "components.TvDetails.cancelrequest": "", + "components.TvDetails.cast": "", + "components.TvDetails.decline": "", + "components.TvDetails.declinerequests": "", + "components.TvDetails.manageModalClearMedia": "", + "components.TvDetails.manageModalClearMediaWarning": "", + "components.TvDetails.manageModalNoRequests": "", + "components.TvDetails.manageModalRequests": "", + "components.TvDetails.manageModalTitle": "", + "components.TvDetails.originallanguage": "", + "components.TvDetails.overview": "", + "components.TvDetails.overviewunavailable": "", + "components.TvDetails.pending": "", + "components.TvDetails.recommendations": "", + "components.TvDetails.recommendationssubtext": "", + "components.TvDetails.request": "", + "components.TvDetails.requestmore": "", + "components.TvDetails.similar": "", + "components.TvDetails.similarsubtext": "", + "components.TvDetails.status": "", + "components.TvDetails.unavailable": "", + "components.TvDetails.userrating": "", + "components.UserEdit.admin": "", + "components.UserEdit.adminDescription": "", + "components.UserEdit.autoapprove": "", + "components.UserEdit.autoapproveDescription": "", + "components.UserEdit.avatar": "", + "components.UserEdit.edituser": "", + "components.UserEdit.email": "E-Mail", + "components.UserEdit.managerequests": "", + "components.UserEdit.managerequestsDescription": "", + "components.UserEdit.permissions": "", + "components.UserEdit.request": "", + "components.UserEdit.requestDescription": "", + "components.UserEdit.save": "", + "components.UserEdit.saving": "", + "components.UserEdit.settings": "", + "components.UserEdit.settingsDescription": "", + "components.UserEdit.userfail": "", + "components.UserEdit.username": "", + "components.UserEdit.users": "", + "components.UserEdit.usersDescription": "", + "components.UserEdit.usersaved": "", + "components.UserEdit.vote": "", + "components.UserEdit.voteDescription": "", + "components.UserList.admin": "", + "components.UserList.created": "", + "components.UserList.delete": "", + "components.UserList.edit": "", + "components.UserList.lastupdated": "", + "components.UserList.plexuser": "", + "components.UserList.role": "", + "components.UserList.totalrequests": "", + "components.UserList.user": "", + "components.UserList.userlist": "", + "components.UserList.username": "", + "components.UserList.usertype": "", + "i18n.approve": "", + "i18n.approved": "", + "i18n.available": "", + "i18n.cancel": "", + "i18n.decline": "", + "i18n.declined": "", + "i18n.delete": "", + "i18n.movies": "", + "i18n.partiallyavailable": "", + "i18n.pending": "", + "i18n.processing": "", + "i18n.tvshows": "", + "i18n.unavailable": "", + "pages.internalServerError": "", + "pages.oops": "", + "pages.pageNotFound": "", + "pages.returnHome": "", + "pages.serviceUnavailable": "", + "pages.somethingWentWrong": "" } diff --git a/src/i18n/locale/en.json b/src/i18n/locale/en.json index e721fe45a..8e60e9676 100644 --- a/src/i18n/locale/en.json +++ b/src/i18n/locale/en.json @@ -49,6 +49,7 @@ "components.PlexLoginButton.loggingin": "Logging in...", "components.PlexLoginButton.loginwithplex": "Login with Plex", "components.RequestBlock.seasons": "Seasons", + "components.RequestCard.all": "All", "components.RequestCard.requestedby": "Requested by {username}", "components.RequestCard.seasons": "Seasons", "components.RequestList.RequestItem.notavailable": "N/A", diff --git a/src/i18n/locale/fr.json b/src/i18n/locale/fr.json index 4c94afbc2..461bab856 100644 --- a/src/i18n/locale/fr.json +++ b/src/i18n/locale/fr.json @@ -49,6 +49,7 @@ "components.PlexLoginButton.loggingin": "Connexion en cours…", "components.PlexLoginButton.loginwithplex": "Se connecter avec Plex", "components.RequestBlock.seasons": "Saisons", + "components.RequestCard.all": "", "components.RequestCard.requestedby": "Demandé par {username}", "components.RequestCard.seasons": "Saisons", "components.RequestList.RequestItem.notavailable": "s.o.", diff --git a/src/i18n/locale/ja.json b/src/i18n/locale/ja.json index d7c0290a0..900873af1 100644 --- a/src/i18n/locale/ja.json +++ b/src/i18n/locale/ja.json @@ -49,6 +49,7 @@ "components.PlexLoginButton.loggingin": "ログイン中…", "components.PlexLoginButton.loginwithplex": "Plexでログイン", "components.RequestBlock.seasons": "シーズン", + "components.RequestCard.all": "", "components.RequestCard.requestedby": "{username}のリクエスト", "components.RequestCard.seasons": "シーズン", "components.RequestList.RequestItem.notavailable": "N/A", diff --git a/src/i18n/locale/nb_NO.json b/src/i18n/locale/nb_NO.json index 0510d40b5..ed953ff0b 100644 --- a/src/i18n/locale/nb_NO.json +++ b/src/i18n/locale/nb_NO.json @@ -1,302 +1,303 @@ { - "pages.oops": "Oida", - "pages.pageNotFound": "404 - Fant ikke siden", + "components.Discover.discovermovies": "Populære filmer", + "components.Discover.discovertv": "Populære serier", + "components.Discover.nopending": "Ingen ventende forespørsler", + "components.Discover.popularmovies": "Populære filmer", + "components.Discover.populartv": "Populære serier", + "components.Discover.recentlyAdded": "Nylig tillagt", + "components.Discover.recentrequests": "Nylige forespørsler", + "components.Discover.trending": "På vei opp", + "components.Discover.upcoming": "Kommende filmer", + "components.Discover.upcomingmovies": "Kommende filmer", + "components.Layout.LanguagePicker.changelanguage": "Endre språk", + "components.Layout.SearchInput.searchPlaceholder": "Søk i filmer og TV-serier", + "components.Layout.Sidebar.dashboard": "Oppdag", + "components.Layout.Sidebar.requests": "Forespørsler", + "components.Layout.Sidebar.settings": "Innstillinger", + "components.Layout.Sidebar.users": "Brukere", + "components.Layout.UserDropdown.signout": "Logg ut", + "components.Layout.alphawarning": "Dette er programvare i alfa-stadie. Nesten alt vil være ufunksjonelt eller ustabilt. Innrapporter feil til Overseerr på GitHub.", + "components.Login.signinplex": "Logg inn for å fortsette", + "components.MovieDetails.approve": "Godta", + "components.MovieDetails.available": "Tilgjengelig", + "components.MovieDetails.budget": "Budsjett", + "components.MovieDetails.cancelrequest": "Kan ikke forespørre", "components.MovieDetails.cast": "Besetning", - "components.TvDetails.cast": "Besetning", - "components.TitleCard.tvshow": "Serier", - "components.TitleCard.movie": "Film", - "components.Settings.notrunning": "Kjører ikke", - "components.Settings.menuGeneralSettings": "Generelle innstillinger", - "components.Settings.menuAbout": "Om", - "components.Settings.manualscan": "Manuell biblioteksskanning", - "components.Settings.default4k": "Forvalgt 4K", - "components.Settings.applicationurl": "Program-nettadresse", - "components.Settings.SonarrModal.toastRadarrTestFailure": "Klarte ikke å koble til Sonarr-tjener", - "components.Settings.SonarrModal.baseUrlPlaceholder": "Eksempel: /sonarr", - "components.Settings.RadarrModal.selectMinimumAvailability": "Velg minimumstilgjengelighet", - "components.Settings.RadarrModal.minimumAvailability": "Minimumstilgjengelighet", - "components.Settings.RadarrModal.baseUrlPlaceholder": "Eksempel: /radarr", - "components.Settings.Notifications.validationSmtpHostRequired": "Du må angi en SMTP-vert", - "components.Settings.Notifications.validationFromRequired": "Du må angi en e-postforsendelsesadresse", - "components.Settings.Notifications.emailsender": "E-postforsendelsesadresse", - "components.Search.searchresults": "Søkeresultater", - "components.RequestModal.status": "Status", - "components.RequestModal.selectseason": "Velg sesong(er)", - "components.RequestModal.seasonnumber": "Sesong {number}", - "components.RequestModal.season": "Sesong", - "pages.serviceUnavailable": "{statusCode} - Tjenesten er utilgjengelig", - "pages.somethingWentWrong": "{statusCode} - Noe gikk galt", - "i18n.unavailable": "Utilgjengelig", - "i18n.tvshows": "Seier", - "i18n.partiallyavailable": "Delvis tilgjengelig", - "i18n.movies": "Filmer", - "i18n.delete": "Slett", - "i18n.declined": "Avslått", - "i18n.decline": "Avslå", - "i18n.cancel": "Avbryt", - "i18n.available": "Tilgjengelig", - "i18n.approved": "Godtatt", - "i18n.approve": "Godta", - "components.UserList.usertype": "Brukertype", - "components.UserList.username": "Brukernavn", - "components.UserList.userlist": "Brukerliste", - "components.UserList.user": "Bruker", - "components.UserList.role": "Rolle", - "components.UserList.plexuser": "Plex-bruker", - "components.UserList.lastupdated": "Sist oppdatert", - "components.UserList.edit": "Rediger", - "components.UserList.delete": "Slett", - "components.UserList.created": "Opprettet", - "components.UserEdit.users": "Håndter brukere", - "components.UserEdit.username": "Brukernavn", - "components.UserEdit.settings": "Håndter innstillinger", - "components.UserEdit.saving": "Lagrer …", - "components.UserEdit.save": "Lagre", - "components.UserEdit.request": "Forespørsel", - "components.UserEdit.permissions": "Tilganger", - "components.UserEdit.managerequests": "Håndter forespørsler", - "components.UserEdit.email": "E-post", - "components.UserEdit.edituser": "Rediger bruker", - "components.UserEdit.avatar": "Avatar", - "components.TvDetails.userrating": "Brukervurdering", - "components.TvDetails.unavailable": "Utilgjengelig", - "components.TvDetails.status": "Status", - "components.TvDetails.similar": "Lignende serier", - "components.TvDetails.recommendations": "Anbefalninger", - "components.TvDetails.overviewunavailable": "Oversikt utilgjengelig", - "components.TvDetails.overview": "Oversikt", - "components.TvDetails.originallanguage": "Originalspråk", - "components.TvDetails.manageModalTitle": "Håndter serier", - "components.TvDetails.manageModalRequests": "Forespørsler", - "components.TvDetails.manageModalNoRequests": "Ingen forespørsler", - "components.TvDetails.decline": "Avslå", - "components.TvDetails.cancelrequest": "Avbryt forespørsel", - "components.TvDetails.available": "Tilgjengelig", - "components.TvDetails.approve": "Godta", - "components.Slider.noresults": "Resultatløst", - "components.Setup.welcome": "Velkommen til Overseerr", - "components.Setup.loginwithplex": "Logg inn med Plex", - "components.Setup.finishing": "Fullfører …", - "components.Setup.finish": "Fullfør oppsett", - "components.Setup.continue": "Fortsett", - "components.Setup.configureservices": "Sett opp tjenester", - "components.Setup.configureplex": "Sett opp Plex", - "components.Settings.syncing": "Synkroniserer …", - "components.Settings.sync": "Synkroniser Plex-bibliotek", - "components.Settings.startscan": "Start skanning", - "components.Settings.ssl": "SSL", - "components.Settings.sonarrsettings": "Sonarr-innstillinger", - "components.Settings.servernamePlaceholder": "Plex-tjenernavn", - "components.Settings.servername": "Tjenernavn (automatisk valgt)", - "components.Settings.saving": "Lagrer …", - "components.Settings.save": "Lagre endringer", - "components.Settings.runnow": "Kjør nå", - "components.Settings.radarrsettings": "Radarr-innstillinger", - "components.Settings.port": "Port", - "components.Settings.plexsettings": "Plex-innstillinger", - "components.Settings.plexlibraries": "Plex-bibliotek", - "components.Settings.notificationsettings": "Merknadsinnstillinger", - "components.Settings.nextexecution": "Neste kjøring", - "components.Settings.menuServices": "Tjenester", - "components.Settings.menuPlexSettings": "Plex", - "components.Settings.menuNotifications": "Merknader", - "components.Settings.menuLogs": "Logger", - "components.Settings.menuJobs": "Jobber", - "components.Settings.jobname": "Jobbnavn", - "components.Settings.hostname": "Vertsnavn/IP", - "components.Settings.generalsettings": "Generelle innstilinger", - "components.Settings.edit": "Rediger", - "components.Settings.SonarrModal.selectRootFolder": "Velg en rotmappe", - "components.Settings.SonarrModal.selectQualityProfile": "Velg en kvalitetsprofil", - "components.Settings.SonarrModal.seasonfolders": "Sesongmapper", - "components.Settings.SonarrModal.saving": "Lagrer …", - "components.Settings.SonarrModal.save": "Lagre endringer", - "components.Settings.SonarrModal.rootfolder": "Rotmappe", - "components.Settings.SonarrModal.qualityprofile": "Kvalitetsprofil", - "components.Settings.SonarrModal.port": "Port", - "components.Settings.SonarrModal.hostname": "Vertsnavn", - "components.Settings.SonarrModal.editsonarr": "Rediger Sonarr-tjener", - "components.Settings.SonarrModal.defaultserver": "Forvalgt tjener", - "components.Settings.SonarrModal.createsonarr": "Opprett ny Sonarr-tjener", - "components.Settings.SonarrModal.apiKeyPlaceholder": "Din API-nøkkel for Sonarr", - "components.Settings.SonarrModal.apiKey": "API-nøkkel", - "components.Settings.SonarrModal.add": "Legg til tjener", - "components.Settings.RadarrModal.validationRootFolderRequired": "Du må velge en rotmappe", - "components.Settings.RadarrModal.validationProfileRequired": "Du må velge en profil", - "components.Settings.RadarrModal.validationPortRequired": "Du må angi en port", - "components.Settings.RadarrModal.validationHostnameRequired": "Du må angi vertsnavn/IP", - "components.Settings.RadarrModal.validationApiKeyRequired": "Du må angi en API-nøkkel", - "components.Settings.RadarrModal.toastRadarrTestFailure": "Klarte ikke å koble til Radarr-tjener", - "components.Settings.RadarrModal.testing": "Tester …", - "components.Settings.RadarrModal.test": "Test", - "components.Settings.RadarrModal.ssl": "SSL", - "components.Settings.RadarrModal.servernamePlaceholder": "En Radarr-tjener", - "components.Settings.RadarrModal.servername": "Tjenernavn", - "components.Settings.RadarrModal.server4k": "4K-tjener", - "components.Settings.RadarrModal.selectRootFolder": "Legg til en rotmappe", - "components.Settings.RadarrModal.selectQualityProfile": "Velg en kvalitetsmappe", - "components.Settings.RadarrModal.saving": "Lagrer …", - "components.Settings.RadarrModal.save": "Lagre endringer", - "components.Settings.RadarrModal.rootfolder": "Rotmappe", - "components.Settings.RadarrModal.qualityprofile": "Kvalitetsprofil", - "components.Settings.RadarrModal.port": "Port", - "components.Settings.RadarrModal.hostname": "Vertsnavn", - "components.Settings.RadarrModal.editradarr": "Rediger Radarr-tjener", - "components.Settings.RadarrModal.defaultserver": "Forvalgt tjener", - "components.Settings.RadarrModal.createradarr": "Opprett ny Radarr-tjener", - "components.Settings.RadarrModal.apiKey": "API-nøkkel", - "components.Settings.RadarrModal.add": "Legg til tjener", - "components.Settings.Notifications.validationSmtpPortRequired": "Du må angi en SMTP-port", - "components.Settings.Notifications.smtpPort": "SMTP-port", - "components.Settings.Notifications.smtpHost": "SMTP-vert", - "components.Settings.Notifications.saving": "Lagrer …", - "components.Settings.Notifications.save": "Lagre endringer", - "components.Settings.Notifications.enableSsl": "Skru på SSL", - "components.RequestModal.pendingrequest": "Ventende forespørsel for {title}", - "components.RequestModal.numberofepisodes": "Antall episoder", - "components.RequestModal.notrequested": "Ikke forespurt", - "components.RequestModal.close": "Lukk", - "components.RequestModal.cancelrequest": "Dette vil fjerne din forespørsel. Er du sikker på at du vil fortsette?", - "components.RequestModal.cancelling": "Avbryter …", - "components.RequestModal.cancel": "Avbryt forespørsel", - "components.RequestList.status": "Status", - "components.RequestList.requests": "Forespørsler", - "components.RequestList.requestedAt": "Forespurt", - "components.RequestList.previous": "Forrige", - "components.RequestList.next": "Neste", - "components.RequestList.modifiedBy": "Sist endret av", - "components.RequestList.mediaInfo": "Mediainfo", - "components.RequestList.RequestItem.seasons": "Sesonger", - "components.RequestList.RequestItem.requestedby": "Fjernet av {username}", - "components.RequestList.RequestItem.notavailable": "I/T", - "components.RequestCard.seasons": "Sesonger", - "components.RequestCard.requestedby": "Forespurt av {username}", - "components.RequestBlock.seasons": "Sesonger", - "components.PlexLoginButton.loggingin": "Logger inn …", - "components.Settings.deleteserverconfirm": "Er du sikker på at du vil slette denne tjeneren?", - "components.Settings.delete": "Slett", - "components.Settings.default": "Forvalg", - "components.Settings.currentlibrary": "Nåværende bibliotek: {name}", - "components.Settings.copied": "AP-nøkkel kopiert til utklippstavle", - "components.Settings.cancelscan": "Avbryt skanning", - "components.Settings.apikey": "API-nøkkel", - "components.Settings.addsonarr": "Legg til Sonarr-tjener", - "components.Settings.address": "Adresse", - "components.Settings.addradarr": "Legg til Radarr-tjener", - "components.Settings.activeProfile": "Aktiv profil", - "components.Settings.SonarrModal.validationRootFolderRequired": "Du må velge en rotmappe", - "components.Settings.SonarrModal.validationProfileRequired": "Du må velge en porfil", - "components.Settings.SonarrModal.validationPortRequired": "Du må angi en port", - "components.Settings.SonarrModal.validationHostnameRequired": "Du må angi vertsnavn/IP", - "components.Settings.SonarrModal.validationApiKeyRequired": "Du må angi en API-nøkkel", - "components.Settings.SonarrModal.testing": "Tester …", - "components.Settings.SonarrModal.test": "Test", - "components.Settings.SonarrModal.ssl": "SSL", - "components.Settings.SonarrModal.servernamePlaceholder": "En Sonarr-tjener", - "components.Settings.SonarrModal.servername": "Tjenernavn", - "components.Settings.SonarrModal.server4k": "4K-tjener", - "components.PlexLoginButton.loading": "Laster inn …", - "components.MovieDetails.viewrequest": "Vis forespørsel", - "components.MovieDetails.userrating": "Brukervurdering", - "components.MovieDetails.unavailable": "Utilgjengelig", - "components.MovieDetails.status": "Status", - "components.MovieDetails.similar": "Lignende titler", - "components.MovieDetails.runtime": "{minutes} minutter", + "components.MovieDetails.decline": "Avslå", + "components.MovieDetails.manageModalClearMedia": "Tøm all mediadata", + "components.MovieDetails.manageModalClearMediaWarning": "Dette vil fjerne all mediadata, inkludert alle forespørsler for dette elementet, for godt. Hvis elementet finnes i ditt Plex-bibliotek, vil mediainfoen gjenskapes ved neste synkronisering.", + "components.MovieDetails.manageModalNoRequests": "Ingen forespørsler", + "components.MovieDetails.manageModalRequests": "Forespørsler", + "components.MovieDetails.manageModalTitle": "Håndter film", + "components.MovieDetails.originallanguage": "Originalspråk", + "components.MovieDetails.overview": "Oversikt", + "components.MovieDetails.overviewunavailable": "Oversikt utilgjengelig", + "components.MovieDetails.pending": "Ventende", + "components.MovieDetails.recommendations": "Anbefalninger", + "components.MovieDetails.recommendationssubtext": "Hvis du likte {title}, kan det hende du også liker …", "components.MovieDetails.releasedate": "Utgivelsesdato", "components.MovieDetails.request": "Forespørsel", - "components.MovieDetails.recommendations": "Anbefalninger", - "components.MovieDetails.pending": "Ventende", - "components.MovieDetails.overviewunavailable": "Oversikt utilgjengelig", - "components.MovieDetails.overview": "Oversikt", - "components.MovieDetails.originallanguage": "Originalspråk", - "components.MovieDetails.manageModalTitle": "Håndter film", - "components.MovieDetails.manageModalRequests": "Forespørsler", - "components.MovieDetails.manageModalNoRequests": "Ingen forespørsler", - "components.MovieDetails.manageModalClearMedia": "Tøm all mediadata", - "components.MovieDetails.decline": "Avslå", - "components.MovieDetails.cancelrequest": "Kan ikke forespørre", - "components.MovieDetails.budget": "Budsjett", - "components.MovieDetails.available": "Tilgjengelig", - "components.MovieDetails.approve": "Godta", - "components.Login.signinplex": "Logg inn for å fortsette", - "components.Layout.UserDropdown.signout": "Logg ut", - "components.Layout.Sidebar.users": "Brukere", - "components.Layout.Sidebar.settings": "Innstillinger", - "components.Layout.Sidebar.requests": "Forespørsler", - "components.Layout.Sidebar.dashboard": "Oppdag", - "components.Layout.SearchInput.searchPlaceholder": "Søk i filmer og TV-serier", - "components.Layout.LanguagePicker.changelanguage": "Endre språk", - "components.Discover.upcomingmovies": "Kommende filmer", - "components.Discover.upcoming": "Kommende filmer", - "components.Discover.recentrequests": "Nylige forespørsler", - "components.Discover.recentlyAdded": "Nylig tillagt", - "components.Discover.populartv": "Populære serier", - "components.Discover.popularmovies": "Populære filmer", - "components.Discover.nopending": "Ingen ventende forespørsler", - "components.Discover.discovertv": "Populære serier", - "components.Discover.discovermovies": "Populære filmer", - "components.RequestModal.requestSuccess": "{title} forespurt.", - "components.Settings.sonarrSettingsDescription": "Sett opp din Sonarr-tilkobling nedenfor. Du kan ha flere, men kun to aktive som forvalg (en for standard HD, og en for 4K). Administratorer kan overstyre hvilken tjener som brukes for nye forespørsler.", - "components.Settings.radarrSettingsDescription": "Sett opp din Radarr-tilkobling nedenfor. Du kan ha flere, men kun to aktive som forvalg (en for standard HD, og en for 4K). Administratorer kan overstyre hvilken tjener som brukes for nye forespørsler.", - "components.Settings.Notifications.authUser": "Identitetsbekreftelsesbrukernavn", - "components.Settings.Notifications.authPass": "Identitetsbekreftelsespassord", - "components.Settings.Notifications.agentenabled": "Agent påskrudd", + "components.MovieDetails.revenue": "Inntekter", + "components.MovieDetails.runtime": "{minutes} minutter", + "components.MovieDetails.similar": "Lignende titler", + "components.MovieDetails.similarsubtext": "Andre filmer som ligner {title}", + "components.MovieDetails.status": "Status", + "components.MovieDetails.unavailable": "Utilgjengelig", + "components.MovieDetails.userrating": "Brukervurdering", + "components.MovieDetails.viewrequest": "Vis forespørsel", + "components.PlexLoginButton.loading": "Laster inn …", + "components.PlexLoginButton.loggingin": "Logger inn …", + "components.PlexLoginButton.loginwithplex": "Logg inn med Plex", + "components.RequestBlock.seasons": "Sesonger", + "components.RequestCard.all": "", + "components.RequestCard.requestedby": "Forespurt av {username}", + "components.RequestCard.seasons": "Sesonger", + "components.RequestList.RequestItem.notavailable": "I/T", + "components.RequestList.RequestItem.requestedby": "Fjernet av {username}", + "components.RequestList.RequestItem.seasons": "Sesonger", + "components.RequestList.mediaInfo": "Mediainfo", + "components.RequestList.modifiedBy": "Sist endret av", + "components.RequestList.next": "Neste", + "components.RequestList.previous": "Forrige", + "components.RequestList.requestedAt": "Forespurt", + "components.RequestList.requests": "Forespørsler", + "components.RequestList.showingresults": "Viser {from} til {to} av {total} resultater", + "components.RequestList.status": "Status", + "components.RequestModal.cancel": "Avbryt forespørsel", + "components.RequestModal.cancelling": "Avbryter …", + "components.RequestModal.cancelrequest": "Dette vil fjerne din forespørsel. Er du sikker på at du vil fortsette?", + "components.RequestModal.close": "Lukk", "components.RequestModal.extras": "Ekstra", - "components.TvDetails.pending": "Ventende", - "components.TvDetails.manageModalClearMediaWarning": "Dette vil fjerne all mediadata, inkludert alle forespørsler om dette elementet, for godt. Hvis dette elementet finnes i ditt Plex-bibliotek, vil mediainfoen ble gjenskapt ved neste synkronisering.", - "components.TvDetails.approverequests": "Godkjenn {requestCount} {requestCount, plural, one {Request} other {Requests}}", - "components.Settings.plexsettingsDescription": "Sett opp innstillingene for din Plex-tjener. Overseerr bruker din Plex-tjener til å skanne ditt bibliotek med gjevne mellomrom for å se hvilket innhold som er tilgjengelig.", - "components.Settings.plexlibrariesDescription": "Bibliotekene Overseerr skanner for titler. Sett opp og lagre dine Plex-tilkoblingsinnstillinger og klikk på knappen nedenfor hvis ingen vises.", - "components.Settings.Notifications.webhookUrlPlaceholder": "Tjenerinnstillinger → Integrasjoner → Vevkroker", - "components.Settings.Notifications.webhookUrl": "Vevkroksnettadresse", - "components.Settings.Notifications.validationWebhookUrlRequired": "Du må angi en vevkroksnettadresse", + "components.RequestModal.notrequested": "Ikke forespurt", + "components.RequestModal.numberofepisodes": "Antall episoder", + "components.RequestModal.pendingrequest": "Ventende forespørsel for {title}", "components.RequestModal.request": "Forespørsel", + "components.RequestModal.requestCancel": "Forespørsel for {title} avbrutt", + "components.RequestModal.requestSuccess": "{title} forespurt.", + "components.RequestModal.requestadmin": "Din forespørsel vil bli godkjent umiddelbart.", + "components.RequestModal.requestfrom": "Det er for tiden en ventende forespørsel fra {username}", + "components.RequestModal.requesting": "Forespør …", + "components.RequestModal.requestseasons": "Forespør {seasonCount} {seasonCount, plural, one {Season} other {Seasons}}", + "components.RequestModal.requesttitle": "Forespør {title}", + "components.RequestModal.season": "Sesong", + "components.RequestModal.seasonnumber": "Sesong {number}", + "components.RequestModal.selectseason": "Velg sesong(er)", + "components.RequestModal.status": "Status", + "components.Search.searchresults": "Søkeresultater", + "components.Settings.Notifications.agentenabled": "Agent påskrudd", + "components.Settings.Notifications.authPass": "Identitetsbekreftelsespassord", + "components.Settings.Notifications.authUser": "Identitetsbekreftelsesbrukernavn", + "components.Settings.Notifications.emailsender": "E-postforsendelsesadresse", + "components.Settings.Notifications.enableSsl": "Skru på SSL", + "components.Settings.Notifications.save": "Lagre endringer", + "components.Settings.Notifications.saving": "Lagrer …", + "components.Settings.Notifications.smtpHost": "SMTP-vert", + "components.Settings.Notifications.smtpPort": "SMTP-port", + "components.Settings.Notifications.validationFromRequired": "Du må angi en e-postforsendelsesadresse", + "components.Settings.Notifications.validationSmtpHostRequired": "Du må angi en SMTP-vert", + "components.Settings.Notifications.validationSmtpPortRequired": "Du må angi en SMTP-port", + "components.Settings.Notifications.validationWebhookUrlRequired": "Du må angi en vevkroksnettadresse", + "components.Settings.Notifications.webhookUrl": "Vevkroksnettadresse", + "components.Settings.Notifications.webhookUrlPlaceholder": "Tjenerinnstillinger → Integrasjoner → Vevkroker", + "components.Settings.RadarrModal.add": "Legg til tjener", + "components.Settings.RadarrModal.apiKey": "API-nøkkel", + "components.Settings.RadarrModal.apiKeyPlaceholder": "Din API-nøkkel for Radarr", + "components.Settings.RadarrModal.baseUrl": "Grunn-nettadresse", + "components.Settings.RadarrModal.baseUrlPlaceholder": "Eksempel: /radarr", + "components.Settings.RadarrModal.createradarr": "Opprett ny Radarr-tjener", + "components.Settings.RadarrModal.defaultserver": "Forvalgt tjener", + "components.Settings.RadarrModal.editradarr": "Rediger Radarr-tjener", + "components.Settings.RadarrModal.hostname": "Vertsnavn", + "components.Settings.RadarrModal.minimumAvailability": "Minimumstilgjengelighet", + "components.Settings.RadarrModal.port": "Port", + "components.Settings.RadarrModal.qualityprofile": "Kvalitetsprofil", + "components.Settings.RadarrModal.rootfolder": "Rotmappe", + "components.Settings.RadarrModal.save": "Lagre endringer", + "components.Settings.RadarrModal.saving": "Lagrer …", + "components.Settings.RadarrModal.selectMinimumAvailability": "Velg minimumstilgjengelighet", + "components.Settings.RadarrModal.selectQualityProfile": "Velg en kvalitetsmappe", + "components.Settings.RadarrModal.selectRootFolder": "Legg til en rotmappe", + "components.Settings.RadarrModal.server4k": "4K-tjener", + "components.Settings.RadarrModal.servername": "Tjenernavn", + "components.Settings.RadarrModal.servernamePlaceholder": "En Radarr-tjener", + "components.Settings.RadarrModal.ssl": "SSL", + "components.Settings.RadarrModal.test": "Test", + "components.Settings.RadarrModal.testing": "Tester …", + "components.Settings.RadarrModal.toastRadarrTestFailure": "Klarte ikke å koble til Radarr-tjener", + "components.Settings.RadarrModal.toastRadarrTestSuccess": "Radarr-tilknytning opprettet.", + "components.Settings.RadarrModal.validationApiKeyRequired": "Du må angi en API-nøkkel", + "components.Settings.RadarrModal.validationHostnameRequired": "Du må angi vertsnavn/IP", + "components.Settings.RadarrModal.validationPortRequired": "Du må angi en port", + "components.Settings.RadarrModal.validationProfileRequired": "Du må velge en profil", + "components.Settings.RadarrModal.validationRootFolderRequired": "Du må velge en rotmappe", + "components.Settings.SonarrModal.add": "Legg til tjener", + "components.Settings.SonarrModal.apiKey": "API-nøkkel", + "components.Settings.SonarrModal.apiKeyPlaceholder": "Din API-nøkkel for Sonarr", + "components.Settings.SonarrModal.baseUrl": "Grunn-nettadresse", + "components.Settings.SonarrModal.baseUrlPlaceholder": "Eksempel: /sonarr", + "components.Settings.SonarrModal.createsonarr": "Opprett ny Sonarr-tjener", + "components.Settings.SonarrModal.defaultserver": "Forvalgt tjener", + "components.Settings.SonarrModal.editsonarr": "Rediger Sonarr-tjener", + "components.Settings.SonarrModal.hostname": "Vertsnavn", + "components.Settings.SonarrModal.port": "Port", + "components.Settings.SonarrModal.qualityprofile": "Kvalitetsprofil", + "components.Settings.SonarrModal.rootfolder": "Rotmappe", + "components.Settings.SonarrModal.save": "Lagre endringer", + "components.Settings.SonarrModal.saving": "Lagrer …", + "components.Settings.SonarrModal.seasonfolders": "Sesongmapper", + "components.Settings.SonarrModal.selectQualityProfile": "Velg en kvalitetsprofil", + "components.Settings.SonarrModal.selectRootFolder": "Velg en rotmappe", + "components.Settings.SonarrModal.server4k": "4K-tjener", + "components.Settings.SonarrModal.servername": "Tjenernavn", + "components.Settings.SonarrModal.servernamePlaceholder": "En Sonarr-tjener", + "components.Settings.SonarrModal.ssl": "SSL", + "components.Settings.SonarrModal.test": "Test", + "components.Settings.SonarrModal.testing": "Tester …", + "components.Settings.SonarrModal.toastRadarrTestFailure": "Klarte ikke å koble til Sonarr-tjener", + "components.Settings.SonarrModal.toastRadarrTestSuccess": "Sonarr-tilknytning opprettet.", + "components.Settings.SonarrModal.validationApiKeyRequired": "Du må angi en API-nøkkel", + "components.Settings.SonarrModal.validationHostnameRequired": "Du må angi vertsnavn/IP", + "components.Settings.SonarrModal.validationPortRequired": "Du må angi en port", + "components.Settings.SonarrModal.validationProfileRequired": "Du må velge en porfil", + "components.Settings.SonarrModal.validationRootFolderRequired": "Du må velge en rotmappe", + "components.Settings.activeProfile": "Aktiv profil", + "components.Settings.addradarr": "Legg til Radarr-tjener", + "components.Settings.address": "Adresse", + "components.Settings.addsonarr": "Legg til Sonarr-tjener", + "components.Settings.apikey": "API-nøkkel", + "components.Settings.applicationurl": "Program-nettadresse", + "components.Settings.cancelscan": "Avbryt skanning", + "components.Settings.copied": "AP-nøkkel kopiert til utklippstavle", + "components.Settings.currentlibrary": "Nåværende bibliotek: {name}", + "components.Settings.default": "Forvalg", + "components.Settings.default4k": "Forvalgt 4K", + "components.Settings.delete": "Slett", + "components.Settings.deleteserverconfirm": "Er du sikker på at du vil slette denne tjeneren?", + "components.Settings.edit": "Rediger", + "components.Settings.generalsettings": "Generelle innstilinger", + "components.Settings.generalsettingsDescription": "Dette er innstillinger som har med det generelle Overseerr-oppsettet å gjøre.", + "components.Settings.hostname": "Vertsnavn/IP", + "components.Settings.jobname": "Jobbnavn", + "components.Settings.librariesRemaining": "Bibliotek som gjenstår: {count}", + "components.Settings.manualscan": "Manuell biblioteksskanning", + "components.Settings.manualscanDescription": "Normalt vil dette kun kjøres hver sjette time. Overseerr sjekker din Plex-tjeners nylig tillagte mer aggresivt. Hvis dette er første gangen du setter opp Plex, anbefales en full manuell biblioteksskanning.", + "components.Settings.menuAbout": "Om", + "components.Settings.menuGeneralSettings": "Generelle innstillinger", + "components.Settings.menuJobs": "Jobber", + "components.Settings.menuLogs": "Logger", + "components.Settings.menuNotifications": "Merknader", + "components.Settings.menuPlexSettings": "Plex", + "components.Settings.menuServices": "Tjenester", + "components.Settings.nextexecution": "Neste kjøring", + "components.Settings.notificationsettings": "Merknadsinnstillinger", + "components.Settings.notificationsettingsDescription": "Har kan du velge hvilke type merknader som skal sendes gjennom en del tjenester.", + "components.Settings.notrunning": "Kjører ikke", + "components.Settings.plexlibraries": "Plex-bibliotek", + "components.Settings.plexlibrariesDescription": "Bibliotekene Overseerr skanner for titler. Sett opp og lagre dine Plex-tilkoblingsinnstillinger og klikk på knappen nedenfor hvis ingen vises.", + "components.Settings.plexsettings": "Plex-innstillinger", + "components.Settings.plexsettingsDescription": "Sett opp innstillingene for din Plex-tjener. Overseerr bruker din Plex-tjener til å skanne ditt bibliotek med gjevne mellomrom for å se hvilket innhold som er tilgjengelig.", + "components.Settings.port": "Port", + "components.Settings.radarrSettingsDescription": "Sett opp din Radarr-tilkobling nedenfor. Du kan ha flere, men kun to aktive som forvalg (en for standard HD, og en for 4K). Administratorer kan overstyre hvilken tjener som brukes for nye forespørsler.", + "components.Settings.radarrsettings": "Radarr-innstillinger", + "components.Settings.runnow": "Kjør nå", + "components.Settings.save": "Lagre endringer", + "components.Settings.saving": "Lagrer …", + "components.Settings.servername": "Tjenernavn (automatisk valgt)", + "components.Settings.servernamePlaceholder": "Plex-tjenernavn", + "components.Settings.sonarrSettingsDescription": "Sett opp din Sonarr-tilkobling nedenfor. Du kan ha flere, men kun to aktive som forvalg (en for standard HD, og en for 4K). Administratorer kan overstyre hvilken tjener som brukes for nye forespørsler.", + "components.Settings.sonarrsettings": "Sonarr-innstillinger", + "components.Settings.ssl": "SSL", + "components.Settings.startscan": "Start skanning", + "components.Settings.sync": "Synkroniser Plex-bibliotek", + "components.Settings.syncing": "Synkroniserer …", + "components.Setup.configureplex": "Sett opp Plex", + "components.Setup.configureservices": "Sett opp tjenester", + "components.Setup.continue": "Fortsett", + "components.Setup.finish": "Fullfør oppsett", + "components.Setup.finishing": "Fullfører …", + "components.Setup.loginwithplex": "Logg inn med Plex", + "components.Setup.signinMessage": "Start med å logge inn på din Plex-konto", + "components.Setup.welcome": "Velkommen til Overseerr", + "components.Slider.noresults": "Resultatløst", + "components.TitleCard.movie": "Film", + "components.TitleCard.tvshow": "Serier", + "components.TvDetails.approve": "Godta", + "components.TvDetails.approverequests": "Godkjenn {requestCount} {requestCount, plural, one {Request} other {Requests}}", + "components.TvDetails.available": "Tilgjengelig", + "components.TvDetails.cancelrequest": "Avbryt forespørsel", + "components.TvDetails.cast": "Besetning", + "components.TvDetails.decline": "Avslå", "components.TvDetails.declinerequests": "Avslå {requestCount} {requestCount, plural, one {Request} other {Requests}}", + "components.TvDetails.manageModalClearMedia": "Tøm all mediadata", + "components.TvDetails.manageModalClearMediaWarning": "Dette vil fjerne all mediadata, inkludert alle forespørsler om dette elementet, for godt. Hvis dette elementet finnes i ditt Plex-bibliotek, vil mediainfoen ble gjenskapt ved neste synkronisering.", + "components.TvDetails.manageModalNoRequests": "Ingen forespørsler", + "components.TvDetails.manageModalRequests": "Forespørsler", + "components.TvDetails.manageModalTitle": "Håndter serier", + "components.TvDetails.originallanguage": "Originalspråk", + "components.TvDetails.overview": "Oversikt", + "components.TvDetails.overviewunavailable": "Oversikt utilgjengelig", + "components.TvDetails.pending": "Ventende", + "components.TvDetails.recommendations": "Anbefalninger", + "components.TvDetails.recommendationssubtext": "Hvis du likte {title}, kan det hende du også liker …", + "components.TvDetails.request": "Forespør", + "components.TvDetails.requestmore": "Forespør flere", + "components.TvDetails.similar": "Lignende serier", + "components.TvDetails.similarsubtext": "Andre serier som ligner {title}", + "components.TvDetails.status": "Status", + "components.TvDetails.unavailable": "Utilgjengelig", + "components.TvDetails.userrating": "Brukervurdering", + "components.UserEdit.admin": "Administrator", + "components.UserEdit.adminDescription": "Full administratortilgang. Unngår alle tilgangssjekker.", + "components.UserEdit.autoapprove": "Godkjenn automatisk", + "components.UserEdit.autoapproveDescription": "Innvilger automatisk godkjennelse av forespørsler gjort av denne brukeren.", + "components.UserEdit.avatar": "Avatar", + "components.UserEdit.edituser": "Rediger bruker", + "components.UserEdit.email": "E-post", + "components.UserEdit.managerequests": "Håndter forespørsler", + "components.UserEdit.managerequestsDescription": "Innvilger tilgang til håndtering av Overseerr-forespørsler. Dette inkluderer godkjenning og avslag av forespørsler.", + "components.UserEdit.permissions": "Tilganger", + "components.UserEdit.request": "Forespørsel", + "components.UserEdit.requestDescription": "Innvilger tilgang til å gjøre forespørsler for filmer og TV-programmer.", + "components.UserEdit.save": "Lagre", + "components.UserEdit.saving": "Lagrer …", + "components.UserEdit.settings": "Håndter innstillinger", "components.UserEdit.settingsDescription": "Innvilger tilgang til å endre alle Overseerr-innstillinger. En bruker må ha denne tilgangen for å innvilge den til andre.", + "components.UserEdit.userfail": "Noe gikk galt under lagring av brukeren.", + "components.UserEdit.username": "Brukernavn", + "components.UserEdit.users": "Håndter brukere", "components.UserEdit.usersDescription": "Innvilger tilgang til håndtering av Overseerr-brukere. Brukere med denne tilgangen kan ikke endre brukere med Administrator-tilgang, eller innvilge det.", + "components.UserEdit.usersaved": "Bruker lagret", "components.UserEdit.vote": "Stemme", "components.UserEdit.voteDescription": "Innvilger tilgang til stemming over forespørsler (stemmegivning er ikke implementert enda)", "components.UserList.admin": "Administrator", + "components.UserList.created": "Opprettet", + "components.UserList.delete": "Slett", + "components.UserList.edit": "Rediger", + "components.UserList.lastupdated": "Sist oppdatert", + "components.UserList.plexuser": "Plex-bruker", + "components.UserList.role": "Rolle", "components.UserList.totalrequests": "Alle forespørsler", + "components.UserList.user": "Bruker", + "components.UserList.userlist": "Brukerliste", + "components.UserList.username": "Brukernavn", + "components.UserList.usertype": "Brukertype", + "i18n.approve": "Godta", + "i18n.approved": "Godtatt", + "i18n.available": "Tilgjengelig", + "i18n.cancel": "Avbryt", + "i18n.decline": "Avslå", + "i18n.declined": "Avslått", + "i18n.delete": "Slett", + "i18n.movies": "Filmer", + "i18n.partiallyavailable": "Delvis tilgjengelig", "i18n.pending": "Venter", "i18n.processing": "Behandler …", - "pages.returnHome": "Helt tilbake", - "components.TvDetails.manageModalClearMedia": "Tøm all mediadata", - "components.Settings.SonarrModal.baseUrl": "Grunn-nettadresse", - "components.Settings.RadarrModal.baseUrl": "Grunn-nettadresse", - "components.Settings.notificationsettingsDescription": "Har kan du velge hvilke type merknader som skal sendes gjennom en del tjenester.", - "components.Settings.manualscanDescription": "Normalt vil dette kun kjøres hver sjette time. Overseerr sjekker din Plex-tjeners nylig tillagte mer aggresivt. Hvis dette er første gangen du setter opp Plex, anbefales en full manuell biblioteksskanning.", - "components.Discover.trending": "På vei opp", - "components.RequestModal.requesting": "Forespør …", - "components.UserEdit.usersaved": "Bruker lagret", - "components.MovieDetails.manageModalClearMediaWarning": "Dette vil fjerne all mediadata, inkludert alle forespørsler for dette elementet, for godt. Hvis elementet finnes i ditt Plex-bibliotek, vil mediainfoen gjenskapes ved neste synkronisering.", - "components.Settings.generalsettingsDescription": "Dette er innstillinger som har med det generelle Overseerr-oppsettet å gjøre.", - "components.RequestModal.requestseasons": "Forespør {seasonCount} {seasonCount, plural, one {Season} other {Seasons}}", - "components.Layout.alphawarning": "Dette er programvare i alfa-stadie. Nesten alt vil være ufunksjonelt eller ustabilt. Innrapporter feil til Overseerr på GitHub.", - "components.MovieDetails.recommendationssubtext": "Hvis du likte {title}, kan det hende du også liker …", - "components.MovieDetails.revenue": "Inntekter", + "i18n.tvshows": "Seier", + "i18n.unavailable": "Utilgjengelig", "pages.internalServerError": "{statusCode} - Intern tjenerfeil", - "components.UserEdit.userfail": "Noe gikk galt under lagring av brukeren.", - "components.UserEdit.requestDescription": "Innvilger tilgang til å gjøre forespørsler for filmer og TV-programmer.", - "components.UserEdit.managerequestsDescription": "Innvilger tilgang til håndtering av Overseerr-forespørsler. Dette inkluderer godkjenning og avslag av forespørsler.", - "components.UserEdit.autoapproveDescription": "Innvilger automatisk godkjennelse av forespørsler gjort av denne brukeren.", - "components.UserEdit.autoapprove": "Godkjenn automatisk", - "components.UserEdit.adminDescription": "Full administratortilgang. Unngår alle tilgangssjekker.", - "components.UserEdit.admin": "Administrator", - "components.TvDetails.similarsubtext": "Andre serier som ligner {title}", - "components.TvDetails.requestmore": "Forespør flere", - "components.TvDetails.request": "Forespør", - "components.TvDetails.recommendationssubtext": "Hvis du likte {title}, kan det hende du også liker …", - "components.Setup.signinMessage": "Start med å logge inn på din Plex-konto", - "components.Settings.librariesRemaining": "Bibliotek som gjenstår: {count}", - "components.Settings.SonarrModal.toastRadarrTestSuccess": "Sonarr-tilknytning opprettet.", - "components.Settings.RadarrModal.toastRadarrTestSuccess": "Radarr-tilknytning opprettet.", - "components.Settings.RadarrModal.apiKeyPlaceholder": "Din API-nøkkel for Radarr", - "components.RequestModal.requesttitle": "Forespør {title}", - "components.RequestModal.requestfrom": "Det er for tiden en ventende forespørsel fra {username}", - "components.RequestModal.requestadmin": "Din forespørsel vil bli godkjent umiddelbart.", - "components.RequestModal.requestCancel": "Forespørsel for {title} avbrutt", - "components.RequestList.showingresults": "Viser {from} til {to} av {total} resultater", - "components.PlexLoginButton.loginwithplex": "Logg inn med Plex", - "components.MovieDetails.similarsubtext": "Andre filmer som ligner {title}" + "pages.oops": "Oida", + "pages.pageNotFound": "404 - Fant ikke siden", + "pages.returnHome": "Helt tilbake", + "pages.serviceUnavailable": "{statusCode} - Tjenesten er utilgjengelig", + "pages.somethingWentWrong": "{statusCode} - Noe gikk galt" } diff --git a/src/styles/globals.css b/src/styles/globals.css index 30bbd22be..0bbdb4881 100644 --- a/src/styles/globals.css +++ b/src/styles/globals.css @@ -36,3 +36,14 @@ body { .error-message { @apply flex items-center justify-center text-center text-gray-300 relative top-0 left-0 bottom-0 right-0 h-screen flex-col; } + +/* Hide scrollbar for Chrome, Safari and Opera */ +.hide-scrollbar::-webkit-scrollbar { + display: none; +} + +/* Hide scrollbar for IE, Edge and Firefox */ +.hide-scrollbar { + -ms-overflow-style: none; /* IE and Edge */ + scrollbar-width: none; /* Firefox */ +}