mirror of
https://github.com/streamyfin/streamyfin.git
synced 2026-06-08 15:08:40 +01:00
Compare commits
1 Commits
develop
...
I10n_crowd
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a76f3a3df9 |
60
.github/workflows/trivy-scan.yml
vendored
60
.github/workflows/trivy-scan.yml
vendored
@@ -1,60 +0,0 @@
|
|||||||
name: 🛡️ Trivy Security Scan
|
|
||||||
|
|
||||||
# Filesystem scan (Streamyfin ships no container image): finds vulnerable dependencies,
|
|
||||||
# leaked secrets and misconfigurations, and reports them to GitHub code scanning.
|
|
||||||
# Runs post-merge + weekly (not on PRs — dependency-review already gates PRs, and SARIF
|
|
||||||
# upload needs a write token that fork PRs don't get).
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: [develop, master]
|
|
||||||
schedule:
|
|
||||||
- cron: "50 7 * * 5" # Weekly, Friday 07:50 UTC
|
|
||||||
workflow_dispatch:
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: trivy-${{ github.ref }}
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
trivy:
|
|
||||||
name: 🔎 Filesystem scan
|
|
||||||
runs-on: ubuntu-24.04
|
|
||||||
permissions:
|
|
||||||
contents: read
|
|
||||||
security-events: write # upload SARIF to code scanning
|
|
||||||
steps:
|
|
||||||
- name: 📥 Checkout repository
|
|
||||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
||||||
|
|
||||||
# Rotate the DB cache weekly (matches the scheduled scan): cache hits within the week
|
|
||||||
# instead of a fresh immutable entry per run, still refreshing the DB every week.
|
|
||||||
- name: 🗓️ Compute weekly Trivy cache key
|
|
||||||
id: trivy-cache-key
|
|
||||||
run: echo "value=trivy-db-${{ runner.os }}-$(date -u +%G-%V)" >> "$GITHUB_OUTPUT"
|
|
||||||
|
|
||||||
- name: 💾 Cache Trivy vulnerability DB
|
|
||||||
uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
|
|
||||||
with:
|
|
||||||
path: ~/.cache/trivy
|
|
||||||
key: ${{ steps.trivy-cache-key.outputs.value }}
|
|
||||||
restore-keys: trivy-db-${{ runner.os }}-
|
|
||||||
|
|
||||||
- name: 🔎 Run Trivy filesystem scan
|
|
||||||
uses: aquasecurity/trivy-action@ed142fd0673e97e23eac54620cfb913e5ce36c25 # v0.36.0
|
|
||||||
with:
|
|
||||||
scan-type: fs
|
|
||||||
scan-ref: .
|
|
||||||
scanners: vuln,secret,misconfig
|
|
||||||
ignore-unfixed: true
|
|
||||||
severity: CRITICAL,HIGH
|
|
||||||
format: sarif
|
|
||||||
output: trivy-results.sarif
|
|
||||||
|
|
||||||
- name: 📤 Upload results to code scanning
|
|
||||||
uses: github/codeql-action/upload-sarif@7211b7c8077ea37d8641b6271f6a365a22a5fbfa # v4.36.0
|
|
||||||
with:
|
|
||||||
sarif_file: trivy-results.sarif
|
|
||||||
category: trivy-fs
|
|
||||||
@@ -4,8 +4,8 @@
|
|||||||
"error_title": "Fehler",
|
"error_title": "Fehler",
|
||||||
"login_title": "Anmelden",
|
"login_title": "Anmelden",
|
||||||
"login_to_title": "Anmelden bei",
|
"login_to_title": "Anmelden bei",
|
||||||
"select_user": "Select a user to log in",
|
"select_user": "Benutzer zum Anmelden auswählen",
|
||||||
"add_user_to_login": "Add a user to log in",
|
"add_user_to_login": "Zum Anmelden einen Benutzer hinzufügen",
|
||||||
"add_user": "Add User",
|
"add_user": "Add User",
|
||||||
"username_placeholder": "Benutzername",
|
"username_placeholder": "Benutzername",
|
||||||
"password_placeholder": "Passwort",
|
"password_placeholder": "Passwort",
|
||||||
@@ -47,9 +47,9 @@
|
|||||||
"add_account": "Konto hinzufügen",
|
"add_account": "Konto hinzufügen",
|
||||||
"remove_account_description": "Hiermit werden die gespeicherten Zugangsdaten für {{username}} entfernt.",
|
"remove_account_description": "Hiermit werden die gespeicherten Zugangsdaten für {{username}} entfernt.",
|
||||||
"remove_server": "Remove Server",
|
"remove_server": "Remove Server",
|
||||||
"remove_server_description": "This will remove {{server}} and all saved accounts from your list.",
|
"remove_server_description": "Dies wird {{server}} und alle gespeicherten Konten aus Ihrer Liste entfernen.",
|
||||||
"select_your_server": "Select Your Server",
|
"select_your_server": "Select Your Server",
|
||||||
"add_server_to_get_started": "Add a server to get started",
|
"add_server_to_get_started": "Füge einen Server hinzu, um loszulegen",
|
||||||
"add_server": "Add Server",
|
"add_server": "Add Server",
|
||||||
"change_server": "Change Server"
|
"change_server": "Change Server"
|
||||||
},
|
},
|
||||||
@@ -95,7 +95,7 @@
|
|||||||
"oops": "Ups!",
|
"oops": "Ups!",
|
||||||
"error_message": "Etwas ist schiefgelaufen.\nBitte melde dich ab und wieder an.",
|
"error_message": "Etwas ist schiefgelaufen.\nBitte melde dich ab und wieder an.",
|
||||||
"continue_watching": "Weiterschauen",
|
"continue_watching": "Weiterschauen",
|
||||||
"continue": "Continue",
|
"continue": "Weiter",
|
||||||
"next_up": "Als nächstes",
|
"next_up": "Als nächstes",
|
||||||
"continue_and_next_up": "\"Weiterschauen\" und \"Als Nächstes\"",
|
"continue_and_next_up": "\"Weiterschauen\" und \"Als Nächstes\"",
|
||||||
"recently_added_in": "Kürzlich hinzugefügt in {{libraryName}}",
|
"recently_added_in": "Kürzlich hinzugefügt in {{libraryName}}",
|
||||||
@@ -121,9 +121,9 @@
|
|||||||
"log_out_button": "Abmelden",
|
"log_out_button": "Abmelden",
|
||||||
"switch_user": {
|
"switch_user": {
|
||||||
"title": "Switch User",
|
"title": "Switch User",
|
||||||
"account": "Account",
|
"account": "Benutzerkonto",
|
||||||
"switch_user": "Switch User on This Server",
|
"switch_user": "Switch User on This Server",
|
||||||
"current": "current"
|
"current": "aktuell"
|
||||||
},
|
},
|
||||||
"categories": {
|
"categories": {
|
||||||
"title": "Kategorien"
|
"title": "Kategorien"
|
||||||
@@ -143,9 +143,9 @@
|
|||||||
"show_series_poster_on_episode": "Show Series Poster on Episodes",
|
"show_series_poster_on_episode": "Show Series Poster on Episodes",
|
||||||
"theme_music": "Theme Music",
|
"theme_music": "Theme Music",
|
||||||
"display_size": "Display Size",
|
"display_size": "Display Size",
|
||||||
"display_size_small": "Small",
|
"display_size_small": "Klein",
|
||||||
"display_size_default": "Default",
|
"display_size_default": "Standard",
|
||||||
"display_size_large": "Large",
|
"display_size_large": "Groß",
|
||||||
"display_size_extra_large": "Extra Large"
|
"display_size_extra_large": "Extra Large"
|
||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
@@ -203,8 +203,8 @@
|
|||||||
"title": "Buffer Settings",
|
"title": "Buffer Settings",
|
||||||
"cache_mode": "Cache Mode",
|
"cache_mode": "Cache Mode",
|
||||||
"cache_auto": "Auto",
|
"cache_auto": "Auto",
|
||||||
"cache_yes": "Enabled",
|
"cache_yes": "Aktiviert",
|
||||||
"cache_no": "Disabled",
|
"cache_no": "Deaktiviert",
|
||||||
"buffer_duration": "Buffer Duration",
|
"buffer_duration": "Buffer Duration",
|
||||||
"max_cache_size": "Max Cache Size",
|
"max_cache_size": "Max Cache Size",
|
||||||
"max_backward_cache": "Max Backward Cache"
|
"max_backward_cache": "Max Backward Cache"
|
||||||
@@ -212,7 +212,7 @@
|
|||||||
"vo_driver": {
|
"vo_driver": {
|
||||||
"title": "Video Output",
|
"title": "Video Output",
|
||||||
"vo_mode": "VO Driver",
|
"vo_mode": "VO Driver",
|
||||||
"gpu_next": "gpu-next (Recommended)",
|
"gpu_next": "gpu-next (empfohlen)",
|
||||||
"gpu": "gpu"
|
"gpu": "gpu"
|
||||||
},
|
},
|
||||||
"gesture_controls": {
|
"gesture_controls": {
|
||||||
@@ -299,20 +299,20 @@
|
|||||||
"hardware_decode": "Hardware Decoding",
|
"hardware_decode": "Hardware Decoding",
|
||||||
"hardware_decode_description": "Hardwarebeschleunigung für Video Decoding verwenden. Deaktivieren wenn Wiedergabeprobleme auftreten.",
|
"hardware_decode_description": "Hardwarebeschleunigung für Video Decoding verwenden. Deaktivieren wenn Wiedergabeprobleme auftreten.",
|
||||||
"opensubtitles_title": "OpenSubtitles",
|
"opensubtitles_title": "OpenSubtitles",
|
||||||
"opensubtitles_hint": "Enter your OpenSubtitles API key to enable client-side subtitle search as a fallback when your Jellyfin server doesn't have a subtitle provider configured.",
|
"opensubtitles_hint": "Geben Sie Ihren OpenSubtitles API-Schlüssel ein, um die Client-seitige Untertitelsuche als Fallback zu aktivieren, wenn Ihr Jellyfin-Server keinen Untertitelanbieter konfiguriert hat.",
|
||||||
"opensubtitles_api_key": "API Key",
|
"opensubtitles_api_key": "API Key",
|
||||||
"opensubtitles_api_key_placeholder": "Enter API key...",
|
"opensubtitles_api_key_placeholder": "API-Schüssel eingeben ...",
|
||||||
"opensubtitles_get_key": "Get your free API key at opensubtitles.com/en/consumers",
|
"opensubtitles_get_key": "Holen Sie sich Ihren kostenlosen API-Schlüssel unter opensubtitles.com/de/consumers",
|
||||||
"mpv_subtitle_scale": "Subtitle Scale",
|
"mpv_subtitle_scale": "Subtitle Scale",
|
||||||
"mpv_subtitle_margin_y": "Vertical Margin",
|
"mpv_subtitle_margin_y": "Vertical Margin",
|
||||||
"mpv_subtitle_align_x": "Horizontal Align",
|
"mpv_subtitle_align_x": "Horizontal Align",
|
||||||
"mpv_subtitle_align_y": "Vertical Align",
|
"mpv_subtitle_align_y": "Vertical Align",
|
||||||
"align": {
|
"align": {
|
||||||
"left": "Left",
|
"left": "Links",
|
||||||
"center": "Center",
|
"center": "Mittig",
|
||||||
"right": "Right",
|
"right": "Rechts",
|
||||||
"top": "Top",
|
"top": "Oben",
|
||||||
"bottom": "Bottom"
|
"bottom": "Unten"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"vlc_subtitles": {
|
"vlc_subtitles": {
|
||||||
@@ -466,10 +466,10 @@
|
|||||||
"downloaded_songs_deleted": "Heruntergeladene Titel gelöscht",
|
"downloaded_songs_deleted": "Heruntergeladene Titel gelöscht",
|
||||||
"clear_all_cache": "Clear All Cache",
|
"clear_all_cache": "Clear All Cache",
|
||||||
"clear_all_cache_confirm": "Clear All Cache?",
|
"clear_all_cache_confirm": "Clear All Cache?",
|
||||||
"clear_all_cache_confirm_desc": "Are you sure you want to clear all cached data? This will clear all cached images, music files, subtitles, and query caches. Your settings and login session will be kept.",
|
"clear_all_cache_confirm_desc": "Sind Sie sicher, dass Sie alle zwischengespeicherten Daten löschen möchten? Dadurch werden alle zwischengespeicherten Bilder, Musikdateien, Untertitel und Abfrage-Caches gelöscht. Ihre Einstellungen und Login-Sitzung werden beibehalten.",
|
||||||
"clear_all_cache_success": "Cache Cleared",
|
"clear_all_cache_success": "Cache Cleared",
|
||||||
"clear_all_cache_success_desc": "All cache has been cleared successfully.",
|
"clear_all_cache_success_desc": "Der Cache wurde erfolgreich geleert.",
|
||||||
"clear_all_cache_error_desc": "An error occurred while clearing the cache."
|
"clear_all_cache_error_desc": "Beim Löschen des Caches ist ein Fehler aufgetreten."
|
||||||
},
|
},
|
||||||
"intro": {
|
"intro": {
|
||||||
"title": "Einführung",
|
"title": "Einführung",
|
||||||
@@ -495,18 +495,18 @@
|
|||||||
"background_downloads_disabled": "Hintergrunddownloads deaktiviert"
|
"background_downloads_disabled": "Hintergrunddownloads deaktiviert"
|
||||||
},
|
},
|
||||||
"security": {
|
"security": {
|
||||||
"title": "Security",
|
"title": "Sicherheit",
|
||||||
"inactivity_timeout": {
|
"inactivity_timeout": {
|
||||||
"title": "Inactivity Timeout",
|
"title": "Inactivity Timeout",
|
||||||
"description": "Auto logout after inactivity",
|
"description": "Automatische Abmeldung nach Inaktivität",
|
||||||
"disabled": "Disabled",
|
"disabled": "Deaktiviert",
|
||||||
"1_minute": "1 minute",
|
"1_minute": "1 Minute",
|
||||||
"5_minutes": "5 minutes",
|
"5_minutes": "5 Minuten",
|
||||||
"15_minutes": "15 minutes",
|
"15_minutes": "15 Minuten",
|
||||||
"30_minutes": "30 minutes",
|
"30_minutes": "30 Minuten",
|
||||||
"1_hour": "1 hour",
|
"1_hour": "1 Stunde",
|
||||||
"4_hours": "4 hours",
|
"4_hours": "4 Stunden",
|
||||||
"24_hours": "24 hours"
|
"24_hours": "24 Stunden"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -591,8 +591,8 @@
|
|||||||
"back": "Zurück",
|
"back": "Zurück",
|
||||||
"continue": "Fortsetzen",
|
"continue": "Fortsetzen",
|
||||||
"verifying": "Verifiziere...",
|
"verifying": "Verifiziere...",
|
||||||
"login": "Login",
|
"login": "Anmelden",
|
||||||
"refresh": "Refresh"
|
"refresh": "Aktualisieren"
|
||||||
},
|
},
|
||||||
"search": {
|
"search": {
|
||||||
"search": "Suchen...",
|
"search": "Suchen...",
|
||||||
@@ -641,7 +641,7 @@
|
|||||||
"movies": "Filme",
|
"movies": "Filme",
|
||||||
"series": "Serien",
|
"series": "Serien",
|
||||||
"boxsets": "Boxsets",
|
"boxsets": "Boxsets",
|
||||||
"playlists": "Playlists",
|
"playlists": "Wiedergabelisten",
|
||||||
"items": "Elemente"
|
"items": "Elemente"
|
||||||
},
|
},
|
||||||
"options": {
|
"options": {
|
||||||
@@ -653,7 +653,7 @@
|
|||||||
"cover": "Cover",
|
"cover": "Cover",
|
||||||
"show_titles": "Titel anzeigen",
|
"show_titles": "Titel anzeigen",
|
||||||
"show_stats": "Statistiken anzeigen",
|
"show_stats": "Statistiken anzeigen",
|
||||||
"options_title": "Options"
|
"options_title": "Optionen"
|
||||||
},
|
},
|
||||||
"filters": {
|
"filters": {
|
||||||
"genres": "Genres",
|
"genres": "Genres",
|
||||||
@@ -662,10 +662,10 @@
|
|||||||
"filter_by": "Filtern nach",
|
"filter_by": "Filtern nach",
|
||||||
"sort_order": "Sortierreihenfolge",
|
"sort_order": "Sortierreihenfolge",
|
||||||
"tags": "Tags",
|
"tags": "Tags",
|
||||||
"all": "All",
|
"all": "Alle",
|
||||||
"reset": "Reset",
|
"reset": "Zurücksetzen",
|
||||||
"asc": "Ascending",
|
"asc": "Aufsteigend",
|
||||||
"desc": "Descending"
|
"desc": "Absteigend"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"favorites": {
|
"favorites": {
|
||||||
@@ -702,34 +702,34 @@
|
|||||||
"downloaded_file_yes": "Ja",
|
"downloaded_file_yes": "Ja",
|
||||||
"downloaded_file_no": "Nein",
|
"downloaded_file_no": "Nein",
|
||||||
"downloaded_file_cancel": "Abbrechen",
|
"downloaded_file_cancel": "Abbrechen",
|
||||||
"swipe_down_settings": "Swipe down for settings",
|
"swipe_down_settings": "Für Einstellungen nach unten wischen",
|
||||||
"ends_at": "Endet um {{time}}",
|
"ends_at": "Endet um {{time}}",
|
||||||
"search_subtitles": "Search Subtitles",
|
"search_subtitles": "Search Subtitles",
|
||||||
"subtitle_tracks": "Tracks",
|
"subtitle_tracks": "Titel",
|
||||||
"subtitle_search": "Search & Download",
|
"subtitle_search": "Search & Download",
|
||||||
"download": "Download",
|
"download": "Herunterladen",
|
||||||
"subtitle_download_hint": "Downloaded subtitles will be saved to your library",
|
"subtitle_download_hint": "Heruntergeladene Untertitel werden in Ihrer Bibliothek gespeichert",
|
||||||
"using_jellyfin_server": "Using Jellyfin Server",
|
"using_jellyfin_server": "Using Jellyfin Server",
|
||||||
"language": "Language",
|
"language": "Sprache",
|
||||||
"results": "Results",
|
"results": "Ergebnisse",
|
||||||
"searching": "Searching...",
|
"searching": "Suche ...",
|
||||||
"search_failed": "Search failed",
|
"search_failed": "Suche fehlgeschlagen",
|
||||||
"no_subtitle_provider": "No subtitle provider configured on server",
|
"no_subtitle_provider": "Kein Untertitelanbieter auf dem Server konfiguriert",
|
||||||
"no_subtitles_found": "No subtitles found",
|
"no_subtitles_found": "Keine Untertitel gefunden",
|
||||||
"add_opensubtitles_key_hint": "Add OpenSubtitles API key in settings for client-side fallback",
|
"add_opensubtitles_key_hint": "OpenSubtitles API-Schlüssel in den Einstellungen für Client-seitigen Fallback hinzufügen",
|
||||||
"settings": "Settings",
|
"settings": "Einstellungen",
|
||||||
"skip_intro": "Skip Intro",
|
"skip_intro": "Skip Intro",
|
||||||
"skip_credits": "Skip Credits",
|
"skip_credits": "Skip Credits",
|
||||||
"stopPlayback": "Stop Playback",
|
"stopPlayback": "Stop Playback",
|
||||||
"stopPlayingTitle": "Stop playing \"{{title}}\"?",
|
"stopPlayingTitle": "Wiedergabe von \"{{title}}\" beenden?",
|
||||||
"stopPlayingConfirm": "Are you sure you want to stop playback?",
|
"stopPlayingConfirm": "Bist du sicher, dass du die Wiedergabe beenden möchtest?",
|
||||||
"downloaded": "Downloaded"
|
"downloaded": "Heruntergeladen"
|
||||||
},
|
},
|
||||||
"chapters": {
|
"chapters": {
|
||||||
"title": "Chapters",
|
"title": "Kapitel",
|
||||||
"chapter_number": "Chapter {{number}}",
|
"chapter_number": "Kapitel {{number}}",
|
||||||
"open": "Open chapters",
|
"open": "Kapitel öffnen",
|
||||||
"close": "Close chapters"
|
"close": "Kapitel schließen"
|
||||||
},
|
},
|
||||||
"item_card": {
|
"item_card": {
|
||||||
"next_up": "Als Nächstes",
|
"next_up": "Als Nächstes",
|
||||||
@@ -754,20 +754,20 @@
|
|||||||
"quality": "Qualität",
|
"quality": "Qualität",
|
||||||
"audio": "Audio",
|
"audio": "Audio",
|
||||||
"subtitles": {
|
"subtitles": {
|
||||||
"label": "Subtitle",
|
"label": "Untertitel",
|
||||||
"none": "None",
|
"none": "Keine",
|
||||||
"tracks": "Tracks"
|
"tracks": "Titel"
|
||||||
},
|
},
|
||||||
"show_more": "Mehr anzeigen",
|
"show_more": "Mehr anzeigen",
|
||||||
"show_less": "Weniger anzeigen",
|
"show_less": "Weniger anzeigen",
|
||||||
"left": "left",
|
"left": "übrig",
|
||||||
"more_info": "More Info",
|
"more_info": "More Info",
|
||||||
"director": "Director",
|
"director": "Regisseur*in",
|
||||||
"cast": "Cast",
|
"cast": "Besetzung",
|
||||||
"technical_details": "Technical Details",
|
"technical_details": "Technical Details",
|
||||||
"appeared_in": "Erschien in",
|
"appeared_in": "Erschien in",
|
||||||
"movies": "Movies",
|
"movies": "Filme",
|
||||||
"shows": "Shows",
|
"shows": "Serien",
|
||||||
"could_not_load_item": "Konnte Element nicht laden",
|
"could_not_load_item": "Konnte Element nicht laden",
|
||||||
"none": "Keine",
|
"none": "Keine",
|
||||||
"download": {
|
"download": {
|
||||||
@@ -782,9 +782,9 @@
|
|||||||
"mark_played": "Mark as Watched",
|
"mark_played": "Mark as Watched",
|
||||||
"mark_unplayed": "Mark as Unwatched",
|
"mark_unplayed": "Mark as Unwatched",
|
||||||
"resume_playback": "Resume Playback",
|
"resume_playback": "Resume Playback",
|
||||||
"resume_playback_description": "Do you want to continue where you left off or start from the beginning?",
|
"resume_playback_description": "Möchtest du dort fortfahren, wo du aufgehört hast oder von Anfang anfangen?",
|
||||||
"play_from_start": "Play from Start",
|
"play_from_start": "Play from Start",
|
||||||
"continue_from": "Continue from {{time}}"
|
"continue_from": "Weiter ab {{time}}"
|
||||||
},
|
},
|
||||||
"live_tv": {
|
"live_tv": {
|
||||||
"next": "Nächste",
|
"next": "Nächste",
|
||||||
@@ -796,16 +796,16 @@
|
|||||||
"sports": "Sport",
|
"sports": "Sport",
|
||||||
"for_kids": "Für Kinder",
|
"for_kids": "Für Kinder",
|
||||||
"news": "Nachrichten",
|
"news": "Nachrichten",
|
||||||
"page_of": "Page {{current}} of {{total}}",
|
"page_of": "Seite {{current}} von {{total}}",
|
||||||
"no_programs": "No programs available",
|
"no_programs": "Keine Programme verfügbar",
|
||||||
"no_channels": "No channels available",
|
"no_channels": "Keine Kanäle verfügbar",
|
||||||
"tabs": {
|
"tabs": {
|
||||||
"programs": "Programs",
|
"programs": "Programme",
|
||||||
"guide": "Guide",
|
"guide": "Führer",
|
||||||
"channels": "Channels",
|
"channels": "Kanäle",
|
||||||
"recordings": "Recordings",
|
"recordings": "Aufzeichnungen",
|
||||||
"schedule": "Schedule",
|
"schedule": "Planung",
|
||||||
"series": "Series"
|
"series": "Serien"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"jellyseerr": {
|
"jellyseerr": {
|
||||||
@@ -851,12 +851,12 @@
|
|||||||
"decline": "Ablehnen",
|
"decline": "Ablehnen",
|
||||||
"requested_by": "Angefragt von {{user}}",
|
"requested_by": "Angefragt von {{user}}",
|
||||||
"unknown_user": "Unbekannter Nutzer",
|
"unknown_user": "Unbekannter Nutzer",
|
||||||
"select": "Select",
|
"select": "Auswählen",
|
||||||
"request_all": "Request All",
|
"request_all": "Request All",
|
||||||
"request_seasons": "Request Seasons",
|
"request_seasons": "Request Seasons",
|
||||||
"select_seasons": "Select Seasons",
|
"select_seasons": "Select Seasons",
|
||||||
"request_selected": "Request Selected",
|
"request_selected": "Request Selected",
|
||||||
"n_selected": "{{count}} selected",
|
"n_selected": "{{count}} ausgewählt",
|
||||||
"toasts": {
|
"toasts": {
|
||||||
"jellyseer_does_not_meet_requirements": "Seerr-Server erfüllt nicht die minimalen Versionsanforderungen. Bitte den Seerr-Server auf mindestens 2.0.0 aktualisieren.",
|
"jellyseer_does_not_meet_requirements": "Seerr-Server erfüllt nicht die minimalen Versionsanforderungen. Bitte den Seerr-Server auf mindestens 2.0.0 aktualisieren.",
|
||||||
"jellyseerr_test_failed": "Seerr-Test fehlgeschlagen. Bitte erneut versuchen.",
|
"jellyseerr_test_failed": "Seerr-Test fehlgeschlagen. Bitte erneut versuchen.",
|
||||||
@@ -877,7 +877,7 @@
|
|||||||
"library": "Bibliothek",
|
"library": "Bibliothek",
|
||||||
"custom_links": "Links",
|
"custom_links": "Links",
|
||||||
"favorites": "Favoriten",
|
"favorites": "Favoriten",
|
||||||
"settings": "Settings"
|
"settings": "Einstellungen"
|
||||||
},
|
},
|
||||||
"music": {
|
"music": {
|
||||||
"title": "Musik",
|
"title": "Musik",
|
||||||
@@ -1004,34 +1004,34 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"companion_login": {
|
"companion_login": {
|
||||||
"title": "Pair with TV",
|
"title": "Mit TV koppeln",
|
||||||
"align_qr": "Align the QR code within the frame",
|
"align_qr": "Den QR-Code innerhalb des Rahmens ausrichten",
|
||||||
"enter_code_manually": "Enter code manually",
|
"enter_code_manually": "Code manuell eingeben",
|
||||||
"pairing_enter_credentials": "Enter credentials for TV",
|
"pairing_enter_credentials": "Anmeldedaten für TV eingeben",
|
||||||
"pairing_code_label": "Pairing code",
|
"pairing_code_label": "Kopplungscode",
|
||||||
"server": "Server",
|
"server": "Server",
|
||||||
"authorize_button": "Authorize",
|
"authorize_button": "Autorisieren",
|
||||||
"authorizing": "Authorizing...",
|
"authorizing": "Autorisieren...",
|
||||||
"scan_again": "Scan Again",
|
"scan_again": "Scan Again",
|
||||||
"done": "Done",
|
"done": "Fertig",
|
||||||
"success_title": "Authorization Sent",
|
"success_title": "Authorization Sent",
|
||||||
"pairing_tv_connecting": "The TV is connecting to your account",
|
"pairing_tv_connecting": "Der Fernseher verbindet sich mit Ihrem Konto",
|
||||||
"error_title": "Authorization Failed",
|
"error_title": "Authorization Failed",
|
||||||
"error_invalid_qr": "Invalid QR code. Please scan the TV pairing code.",
|
"error_invalid_qr": "Ungültiger QR-Code. Bitte scannen Sie den TV-Kopplungscode.",
|
||||||
"error_generic": "Something went wrong. Please try again.",
|
"error_generic": "Etwas ist schiefgelaufen. Bitte versuche es erneut.",
|
||||||
"error_permission_denied": "Camera permission is required to scan QR codes.",
|
"error_permission_denied": "Kameraberechtigung erforderlich zum Scannen von QR-Codes.",
|
||||||
"login_as": "Log in as {{username}}?",
|
"login_as": "Als {{username}} anmelden?",
|
||||||
"on_server": "on {{server}}",
|
"on_server": "auf {{server}}",
|
||||||
"use_different_user": "Use a different user",
|
"use_different_user": "Verwende einen anderen Benutzer",
|
||||||
"open_settings": "Open Settings"
|
"open_settings": "Einstellungen öffnen"
|
||||||
},
|
},
|
||||||
"pairing": {
|
"pairing": {
|
||||||
"pair_with_phone": "Pair with Phone",
|
"pair_with_phone": "Pair with Phone",
|
||||||
"pair_with_phone_title": "Login TV",
|
"pair_with_phone_title": "Login TV",
|
||||||
"pair_with_phone_description": "Scan the QR code displayed on your TV to log in",
|
"pair_with_phone_description": "Scannen Sie den QR-Code, der auf Ihrem Fernseher angezeigt wird, um sich anzumelden",
|
||||||
"waiting_for_phone": "Waiting for phone...",
|
"waiting_for_phone": "Warte auf Telefon...",
|
||||||
"scan_with_phone": "Scan with the Streamyfin app on your phone",
|
"scan_with_phone": "Scanne mit der Streamyfin-App auf deinem Handy",
|
||||||
"logging_in": "Logging in...",
|
"logging_in": "Anmeldung...",
|
||||||
"logging_in_description": "Connecting to your server"
|
"logging_in_description": "Verbinde mit deinem Server"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -378,7 +378,7 @@
|
|||||||
"caching_title": "Almacenando en caché",
|
"caching_title": "Almacenando en caché",
|
||||||
"caching_description": "Cachear automáticamente las próximas canciones para una reproducción más suave.",
|
"caching_description": "Cachear automáticamente las próximas canciones para una reproducción más suave.",
|
||||||
"lookahead_enabled": "Activar el look-Ahead Cache",
|
"lookahead_enabled": "Activar el look-Ahead Cache",
|
||||||
"lookahead_count": "",
|
"lookahead_count": "Songs to pre-cache",
|
||||||
"max_cache_size": "Tamaño máximo del caché"
|
"max_cache_size": "Tamaño máximo del caché"
|
||||||
},
|
},
|
||||||
"plugins": {
|
"plugins": {
|
||||||
|
|||||||
@@ -4,8 +4,8 @@
|
|||||||
"error_title": "Errore",
|
"error_title": "Errore",
|
||||||
"login_title": "Accesso",
|
"login_title": "Accesso",
|
||||||
"login_to_title": "Accedi a",
|
"login_to_title": "Accedi a",
|
||||||
"select_user": "Select a user to log in",
|
"select_user": "Seleziona un utente per accedere",
|
||||||
"add_user_to_login": "Add a user to log in",
|
"add_user_to_login": "Aggiungi un utente per accedere",
|
||||||
"add_user": "Add User",
|
"add_user": "Add User",
|
||||||
"username_placeholder": "Nome utente",
|
"username_placeholder": "Nome utente",
|
||||||
"password_placeholder": "Password",
|
"password_placeholder": "Password",
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
"connect_button": "Connetti",
|
"connect_button": "Connetti",
|
||||||
"previous_servers": "server precedente",
|
"previous_servers": "server precedente",
|
||||||
"clear_button": "Cancella",
|
"clear_button": "Cancella",
|
||||||
"swipe_to_remove": "Swipe to remove",
|
"swipe_to_remove": "Scorri per rimuovere",
|
||||||
"search_for_local_servers": "Ricerca dei server locali",
|
"search_for_local_servers": "Ricerca dei server locali",
|
||||||
"searching": "Cercando...",
|
"searching": "Cercando...",
|
||||||
"servers": "Server",
|
"servers": "Server",
|
||||||
@@ -41,21 +41,21 @@
|
|||||||
"session_expired": "Session Expired",
|
"session_expired": "Session Expired",
|
||||||
"please_login_again": "La tua sessione è scaduta. Si prega di eseguire nuovamente l'accesso.",
|
"please_login_again": "La tua sessione è scaduta. Si prega di eseguire nuovamente l'accesso.",
|
||||||
"remove_saved_login": "Remove Saved Login",
|
"remove_saved_login": "Remove Saved Login",
|
||||||
"remove_saved_login_description": "This will remove your saved credentials for this server. You'll need to enter your username and password again next time.",
|
"remove_saved_login_description": "Questo rimuoverà le tue credenziali salvate per questo server. Dovrai inserire nuovamente il tuo nome utente e la password la prossima volta.",
|
||||||
"accounts_count": "{{count}} accounts",
|
"accounts_count": "Account {{count}}",
|
||||||
"select_account": "Select Account",
|
"select_account": "Select Account",
|
||||||
"add_account": "Add Account",
|
"add_account": "Add Account",
|
||||||
"remove_account_description": "This will remove the saved credentials for {{username}}.",
|
"remove_account_description": "Questo rimuoverà le credenziali salvate per {{username}}.",
|
||||||
"remove_server": "Remove Server",
|
"remove_server": "Remove Server",
|
||||||
"remove_server_description": "This will remove {{server}} and all saved accounts from your list.",
|
"remove_server_description": "Questo rimuoverà {{server}} e tutti gli account salvati dall'elenco.",
|
||||||
"select_your_server": "Select Your Server",
|
"select_your_server": "Select Your Server",
|
||||||
"add_server_to_get_started": "Add a server to get started",
|
"add_server_to_get_started": "Aggiungi un server per iniziare",
|
||||||
"add_server": "Add Server",
|
"add_server": "Add Server",
|
||||||
"change_server": "Change Server"
|
"change_server": "Change Server"
|
||||||
},
|
},
|
||||||
"save_account": {
|
"save_account": {
|
||||||
"title": "Save Account",
|
"title": "Save Account",
|
||||||
"save_for_later": "Save this account",
|
"save_for_later": "Salva questo account",
|
||||||
"security_option": "Security Option",
|
"security_option": "Security Option",
|
||||||
"no_protection": "No protection",
|
"no_protection": "No protection",
|
||||||
"no_protection_desc": "Quick login without authentication",
|
"no_protection_desc": "Quick login without authentication",
|
||||||
@@ -150,7 +150,7 @@
|
|||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
"title": "Network",
|
"title": "Network",
|
||||||
"local_network": "",
|
"local_network": "Local network",
|
||||||
"auto_switch_enabled": "Auto-switch when at home",
|
"auto_switch_enabled": "Auto-switch when at home",
|
||||||
"auto_switch_description": "Automatically switch to local URL when connected to home WiFi",
|
"auto_switch_description": "Automatically switch to local URL when connected to home WiFi",
|
||||||
"local_url": "Local URL",
|
"local_url": "Local URL",
|
||||||
|
|||||||
@@ -123,7 +123,7 @@
|
|||||||
"title": "Switch User",
|
"title": "Switch User",
|
||||||
"account": "Account",
|
"account": "Account",
|
||||||
"switch_user": "Switch User on This Server",
|
"switch_user": "Switch User on This Server",
|
||||||
"current": "current"
|
"current": "nåværende"
|
||||||
},
|
},
|
||||||
"categories": {
|
"categories": {
|
||||||
"title": "Categories"
|
"title": "Categories"
|
||||||
|
|||||||
@@ -346,7 +346,7 @@
|
|||||||
"PORTRAIT_DOWN": "Portrait Down",
|
"PORTRAIT_DOWN": "Portrait Down",
|
||||||
"LANDSCAPE": "Landscape",
|
"LANDSCAPE": "Landscape",
|
||||||
"LANDSCAPE_LEFT": "Landscape Left",
|
"LANDSCAPE_LEFT": "Landscape Left",
|
||||||
"LANDSCAPE_RIGHT": "",
|
"LANDSCAPE_RIGHT": "Landscape right",
|
||||||
"OTHER": "Other",
|
"OTHER": "Other",
|
||||||
"UNKNOWN": "Unknown"
|
"UNKNOWN": "Unknown"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ export const getDownloadUrl = async ({
|
|||||||
if (maxBitrate.key === "Max" && !streamDetails?.mediaSource?.TranscodingUrl) {
|
if (maxBitrate.key === "Max" && !streamDetails?.mediaSource?.TranscodingUrl) {
|
||||||
console.log("Downloading item directly");
|
console.log("Downloading item directly");
|
||||||
return {
|
return {
|
||||||
url: `${api.basePath}/Items/${mediaSource.Id}/Download?api_key=${api.accessToken}`,
|
url: `${api.basePath}/Items/${item.Id}/Download?api_key=${api.accessToken}`,
|
||||||
mediaSource: streamDetails?.mediaSource ?? null,
|
mediaSource: streamDetails?.mediaSource ?? null,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user