fix offline state, update label

This commit is contained in:
_Bastler
2023-12-15 13:00:25 +01:00
parent 30bed7245f
commit 86af84c7a5
4 changed files with 620 additions and 83 deletions
+297 -33
View File
@@ -5,10 +5,92 @@
".": "Erweitert"
}
},
"borrow": {
".": "Ausleihen",
"items": {
".": "Verleihbare Items",
"actions": "Aktionen",
"autoAccept": "Automatisch akzeptieren",
"availability": {
".": "Verfügbarkeit",
"ALWAYS": "Immer",
"MANUAL": "Manuel",
"PERIOD": "Periodisch"
},
"create": "Neues Item erstellen",
"confirmDelete": "Bist du sicher, dass du das Item '{0}' löschen möchtest?",
"delete": "Item löschen",
"description": "Beschreibung",
"edit": "Item bearbeiten",
"email": "E-Mail",
"emailNotification": "E-Mail Benachrichtigungen",
"error": {
"availability": "Bitte Verfügbarkeit auswählen.",
"description": "Bitte eine Beschreibung eintragen.",
"email": "Bitte eine gültige E-Mail Addresse eintragen.",
"name": "Bitte einen Namen eintragen.",
"maxDuration": "Max. Dauer muss größer als die min. Dauer sein.",
"minDuration": "Min. Dauer muss kleiner als die max. Dauer sein.",
"slot": {
"end": "Ende muss nach dem Beginn sein.",
"endDay": "Wochentag muss größer oder gleich dem Beginn sein.",
"endTime": "Ende muss nach dem Beginn sein.",
"start": "Beginn muss kleiner dem Ende sein.",
"startDay": "Wochentag muss kleiner oder gleich dem Ende sein.",
"startTime": "Beginn muss vor dem Ende sein."
},
"url": "Bitte eine gültige Url eintragen."
},
"maxDuration": "Max. Dauer",
"minDuration": "Min. Dauer",
"mine": "Meine",
"name": "Name",
"save": "Item speichern",
"search": "Suche",
"slot": {
".": "Slot",
"addManual": "Manuellen Slot hinzufügen",
"addPeriod": "Periodischen Slot hinzufügen",
"day": {
".": "Tag",
"MONDAY": "Montag",
"TUESDAY": "Dienstag",
"WEDNESDAY": "Mittwoch",
"THURSDAY": "Donnerstag",
"FRIDAY": "Freitag",
"SATURDAY": "Samstag",
"SUNDAY": "Sonntag"
},
"delete": "Slot entfernen",
"end": "Ende",
"endDay": "Wochentag Ende",
"endTime": "Ende",
"MANUAL": "Manuelle Slots",
"PERIOD": "Periodische Slots",
"start": "Beginn",
"startDay": "Wochentag Beginn",
"startTime": "Beginn"
},
"url": "Url"
},
"proving": {
".": "Proving",
"camera": "Camera",
"flash": "Flash"
},
"requests": {
".": "Requests"
}
},
"cancel": "Abbrechen",
"close": "Schließen",
"confirm": "Bestätigen",
"delete" : "Löschen",
"delete": "Löschen",
"durationpicker": {
"days": "Tage",
"hours": "Stunden",
"minutes": "Minuten"
},
"email": {
".": "E-Mail Adresse",
"invalid": "ungültige E-Mail Adresse",
@@ -18,19 +100,20 @@
}
},
"format": {
"date": "dd.MM.yyyy",
"datetime": "dd.MM.yyyy HH:mm",
"date": "DD.MM.YYYY",
"datetime": "DD.MM.YYYY HH:mm",
"time": "HH:mm:ss"
},
"greet": "Hallo {0}",
"help": "Hilfe",
"help-button" : "Finde Hilfe im Wiki",
"help-button": "Finde Hilfe im Wiki",
"imprint": "Impressum",
"info": {
".": "Info"
},
"invite": {
".": "Einleidung",
"actions": "Aktionen",
"create": "Einladung erstellen",
"expires": "Gültig bis",
"link": "Link",
@@ -43,10 +126,21 @@
},
"invites": {
".": "Einladungen",
"info": "Hier kannst du neue Einladungen erstellen. Um die Einladung zu bearbeiten klicke einfach auf den Link. Wenn du authoriziert bist, kannst du dort direkt den persönlichen Einladungstext bearbeiten oder eine Notiz hinzufügen. Danach kannst du denselben Link einfach an die einzuladene Person verschicken oder die Seite für eine analoge Einladung ausdrucken. Wird der Link ohne Authorizierung aufgerufen, erscheint unten auf der Seite ein Formular zur Registrierung!",
"edit": {
".": "Edit Invite",
"save": "Save Invite"
},
"info": "Hier kannst du neue Einladungen erstellen. Um die Einladung zu bearbeiten klicke einfach auf den Bearbeiten-Button. Wenn du authoriziert bist, kannst du den persönlichen Einladungstext auch direkt unter dem Einladungslink bearbeiten oder eine Notiz hinzufügen. Danach kannst du denselben Link einfach an die einzuladene Person verschicken. Wird der Link ohne Authorizierung aufgerufen, erscheint unten auf der Seite ein Formular zur Registrierung!",
"left": "Du kannst noch {0} Einladungen erstellen.",
"noQuota": "Deine Quota für Einladungen ist leider aufgebraucht.",
"others": "Einladungen anderer Mitglieder",
"quota": {
"pubquiz": {
".": "Pubquiz",
"icon": "quiz",
"text": "Einladung zum Pubquiz."
}
},
"redeemed": {
"filter": {
".": "Einglöst-Filter",
@@ -55,18 +149,34 @@
"true": "Eingelöst"
}
},
"register": {
".": "Einladung einlösen",
"error": {
"ALREADY_REDEEMED": "Der Einladungscode wurde bereits eingelöst.",
"EXPIRED": "Der Einladungscode ist abgelaufen!",
"INVALID_CODE": "Der Einladungscode ist ungültig!",
"NO_CODE": "Kein Einladungscode mitgegeben!"
},
"login": "Login",
"success": {
".": "Finished registration",
"text": "Successfully registered your Account. You can login now!"
},
"time": "Invite valid from {0} till {1}",
"url": "Mehr Informationen"
},
"search": "Suche"
},
"jitsi": {
"rooms": {
".": "Jitsi Räume",
"clipboard" : {
"copied" : "Jitsi Room Url in die Zwischenablage kopiert!"
"clipboard": {
"copied": "Jitsi Room Url in die Zwischenablage kopiert!"
},
"confirmDelete": "Möchtest du wirklich deinen Jitsi Raum '{0}' löschen?",
"create": "Jitsi Raum erstellen",
"delete": "Löschen",
"edit" : "Bearbeiten",
"edit": "Bearbeiten",
"error": {
"expires": "Ungültiges Ende.",
"moderationStarts": "Ungültiger Beginn Moderation. Moderation muss vor Beginn liegen.",
@@ -81,7 +191,7 @@
"noQuota": "Deine Quota für Jitsi Räume ist leider aufgebraucht.",
"notStarted": "Die Konferenz hat noch nicht begonnen, Url in die Zwischenablage kopieren.",
"room": "Name",
"save" : "Speichern",
"save": "Speichern",
"starts": "Beginn"
},
"share": {
@@ -104,6 +214,32 @@
}
}
},
"jukebox": {
".": "Jukebox",
"addToQueue": {
".": "Zur Warteliste hinzufügen",
"confirm": "Möchtest du '{0} - {1}' zur Warteliste hinzufügen?",
"error": "Fehler",
"success": "Erfolg"
},
"current": "Aktueller Titel",
"forbidden": {
".": "Keine Berechtigungen",
"hint": "Dir fehlen dir nötigen Berechtigungen die Jukebox zu verwenden."
},
"search": {
".": "Suche",
"icon": "search",
"more": "Mehr anzeigen",
"submit": "Abschicken"
},
"timeout": "Bitte warte {0} Sekunden bis zu deiner nächsten Anfrage.",
"unavailable": {
".": "Nicht verfügbar",
"hint": "Aktuell ist die Jukebox ausgestellt."
},
"wait": "Bitte warten."
},
"locale": {
"de-informal": {
"long": "Deutsch",
@@ -142,19 +278,53 @@
"text": "Diese Seite wurde nicht gefunden."
},
"ok": "Ok",
"paginator": {
"empty": "Keine Ergebnisse",
"firstPage": "Erste Seite",
"itemsPerPage": "Einträge pro Seite:",
"lastPage": "Letzte Seite",
"nextPage": "Nächste Seite",
"previousPage": "Vorherige Seite",
"range": "Seite {0} von {1}"
},
"partey": {
".": "Partey",
"tags" : {
"." : "Partey Tags",
"none" : "Keine"
},
"tag": {
".": "Partey Tag",
"access-storage": {
".": "Zugang Lagerraum",
"hint": "Zugang zum Lagerraum im Erdgeschoss."
},
"admin": {
".": "Administrator",
"hint": "Sende Nachrichten an Räume."
},
"cinema-mod": {
".": "Moderator Kinosaal",
"hint": "Im Kinosaal: Zugang zur Bühne, Festlegen der Stream-Url, Moderationsrechte im Chatraum."
},
"disco-mod": {
".": "Moderator Disco",
"hint": "In der Disco: Zugang zur Bühne, Festlegen des Bühnenlayouts, Moderationsrechte im Chatraum."
},
"game-mod": {
".": "Spielezimmer Moderator",
"hint": "Im Spielezimmer: Festlegen der Tischbezeichungen, Moderationsrechte im Chatraum."
}
},
"tags": {
".": "Partey Tags",
"none": "Keine"
},
"timeslots": {
".": "Partey Sendeplätze",
"confirmDelete": "Möchtest du wirklich deinen Sendeplatz '{0}' um {1} löschen?",
"create": {
".": "Neuen Sendplatz erstellen",
"AUDIO": "Neuer Audio Sendplatz",
"VIDEO": "Neuer Video Sendplatz"
"AUDIO_STREAM": "Neuer Audio Stream Sendplatz",
"VIDEO": "Neuer Video Sendplatz",
"VIDEO_STREAM": "Neuer Video Stream Sendplatz"
},
"delete": "Löschen",
"description": "Beschreibung",
@@ -178,7 +348,9 @@
".": "Typ",
"all": "Alle",
"AUDIO": "Audio",
"VIDEO": "Video"
"AUDIO_STREAM": "Audio Stream",
"VIDEO": "Video",
"VIDEO_STREAM": "Video Stream"
}
},
"info": "Info",
@@ -190,6 +362,10 @@
"copied": "In die Zwischenablage kopiert",
"copy": "Audio Stream Secret kopieren"
},
"share": {
".": "Freigabe",
"placeholder": "Dateiname der Freigabe"
},
"starts": "Beginn",
"stream": {
".": "Stream",
@@ -201,10 +377,18 @@
".": "Typ",
"AUDIO": {
".": "Audio",
"icon": "library_music"
},
"AUDIO_STREAM": {
".": "Audio Stream",
"icon": "music_note"
},
"VIDEO": {
".": "Video",
"icon": "movie"
},
"VIDEO_STREAM": {
".": "Video Stream",
"icon": "live_tv"
}
}
@@ -368,18 +552,30 @@
"text": "Deine Registrierung war erfolgreich. Du kannst dich nun einloggen!",
"title": "Registrierung abgeschlossen"
},
"token.missing": "Du benötigst leider ein gültiges Token!"
"token": {
"locked": {
".": "Benötigst einen Account um dieses Token einzulösen!",
"action": "Bitte logge dich ein."
},
"missing": {
".": "Du benötigst leider ein gültiges Token!",
"action": "Token einlösen"
}
}
},
"save": "Speichern",
"security": {
".": "Sicherheit",
"2fa": {
".": "Zwei-Faktor-Authentifizierung (2FA)",
"code": "Code",
"external": "2FA erforderlich",
"info": "Du kannst hier einen zweiten Faktor zusätzlich zu deinem Passwort hinzufügen. Beachte, dass dies nur den Login in deinen we.bstly-Account betrifft. 2FA gilt nicht für deinen E-Mail Account. Aktuell wird nur TOTP (bekannt als Google Authenticator) unterstützt.",
"invalid": "Ungültiger Code",
"keepSession": "2FA für dieses Gerät merken",
"login": "Code prüfen",
"missing": "Bitte 2FA Code angeben",
"provider": "Provider",
"totp": {
".": "2FA (TOTP)",
"activate": "Um TOTP als 2FA zu aktivieren, gebe bitte deinen aktuellen Code ein.",
@@ -389,12 +585,20 @@
"external": "2FA (TOTP)",
"hint": "Um TOTP als zweiten Faktor beim Login zu verwenden, scanne den QRCode mit deiner TOTP App.",
"invalid": "TOTP Code ist ungültig",
"keepSession": "2FA (TOTP) für dieses Gerät merken",
"login": "Code verfizieren",
"missing": "Bitte TOTP Code eingeben",
"remove": "2FA (TOTP) deaktivieren"
}
},
"oidc": {
".": "OpenID Connect Login",
"alias": "Alias auswählen",
"authorize": {
".": "Authorisieren",
"hint": "Authorisiere die Application auf Teile deines Profile zuzugreifen um dich zu authentifizieren."
},
"login": "Login"
},
"status": {
".": "Status",
"change": "Status aktualisieren",
@@ -432,11 +636,29 @@
"text": "Du kannst zusätzlich zu deinem Usernamen noch alternative Namen anlegen.",
"title": "Alternative Namen"
},
"category" : {
"we-tools" : "we.bstly Tools",
"ztools" : "Tools"
"bstlboard": {
"icon": "code",
"subtitle": "Message Board und Link Aggregator",
"text": "Poste Links, diskutiere, teile oder frage die Community.",
"title": "bstlboard"
},
"category": {
"we-tools": "we.bstly Tools",
"ztools": "Tools"
},
"dyndns": {
"icon": "public",
"subtitle": "Dynamischer DNS Service",
"text": "Erreiche dein Heimnetzwerk von überall aus über deine we.bstly.de-Domain",
"title": "DynDns"
},
"empty": "Du hast aktuell keine Berechtigungen zur Nutzung von Diensten.",
"funkwhale_access": {
"icon": "account_box",
"subtitle": "Funkwhale Account erstellen",
"text": "Erstelle Account für Funkwhale",
"title": "Funkwhale Account"
},
"gitea": {
"icon": "code",
"subtitle": "Git-Repositories",
@@ -450,6 +672,12 @@
"text": "Hier kannst du Einladungen für die Eröffnungs-Partey erstellen.",
"title": "Partey-Einladung"
},
"invite_pubquiz": {
"icon": "sports_bar",
"subtitle": "Einladungen zum Pubquiz",
"text": "Hier kannst du Einladungen für das Pubquiz erstellen.",
"title": "Pubquiz-Einladungen"
},
"jitsi": {
"icon": "video_call",
"subtitle": "Video Konferenzen",
@@ -462,24 +690,36 @@
"text": "Catch-All an @{username}.we.bstly.de, lernender Spam-Filter und PGP Verschlüsselung.",
"title": "E-Mail Postfach"
},
"mastodon": {
"icon": "rss_feed",
"subtitle": "Mikroblogging Dienst im Fediverse",
"text": "Mastodon ist eine dezentrale und datenschutzfreundliche Twitter-Alternative angesiedelt im Fediverse.",
"title": "Mastodon"
},
"matrix": {
"icon": "question_answer",
"subtitle": "Messenger Plattform",
"text": "mit anderen Austauschen, sich Informieren oder einfach quatschen.",
"title": "Matrix"
},
"minetest" : {
"minetest": {
"icon": "widgets",
"subtitle": "Open-Source Minecraft Klon",
"text": "Minetest mit Mineclone2 Game ist ein open-source Minecraft-artiges Spiel.",
"title": "Minetest"
},
"minetest_accounts" : {
"minetest_accounts": {
"icon": "account_box",
"subtitle": "Minetest Account erstellen",
"text": "Erstelle Account(s) für Minetest",
"title": "Minetest Accounts"
},
"mobilizon": {
"icon": "event",
"subtitle": "Dezentraler Veranstaltungsmanager",
"text": "Mobilizon ist ein Werkzeug zur Erstellung und Organisation von Veranstaltungen.",
"title": "Mobilizon"
},
"monitoring": {
"icon": "check",
"subtitle": "System Status",
@@ -588,14 +828,20 @@
"token": "Token",
"tokens": {
".": "Tokens",
"active" : "Aktuelle Tokens",
"active": "Aktuelle Tokens",
"enter": "Token einlösen",
"get": "Mitgliedschaft",
"invalid": "Das Token ist leider nicht gültig.",
"login": "Du hast schon einen Account? Dann logge dich ein um das Token für deinem Account einzulösen.",
"loginRequired": "Für dieses Token ist ein Account erforderlich. Bitte logge dich ein um das Token für deinem Account einzulösen.",
"provide-valid": "Bitte gebe ein gültiges Token ein.",
"redeem": "Tokens einlösen",
"redeemed": "Das Token wurde bereits eingelöst.",
"validate": "Prüfen"
"register": "Du bist neu hier? Dann registriere jetzt deinen Account um das Token einzulösen.",
"validate": {
".": "Token prüfen",
"other": "Neues Token prüfen"
}
},
"urlshortener": {
".": "Urlshortener",
@@ -604,7 +850,7 @@
"confirmDelete": "Möchtest du wirklich deinen verkürzten Link für '{0}' löschen?",
"create": "Verkürzten Link erstellen",
"delete": "Löschen",
"edit" : "Bearbeiten",
"edit": "Bearbeiten",
"error": {
"code": "Kürzel wird bereits verwendet",
"expires": "Das Ablaufdatum muss in der Zukunft liegen",
@@ -614,7 +860,7 @@
"info": "Du kannst hier verkürzte Links erstellen. Die Anzahl wird über eine Quota begrenzt.",
"left": "Du kannst noch {0} verkürtze/n Link/s erstellen.",
"link": "Link",
"newPassword" : "Neues Passwort",
"newPassword": "Neues Passwort",
"noQuota": "Deine Quota für verkürzte Links ist leider aufgebraucht.",
"note": "Notiz",
"password": {
@@ -622,11 +868,11 @@
"invalid": "Das angebene Passwort ist ungültig.",
"submit": "Abschicken"
},
"queryParameters" : {
"." : "Query Parameter weiterreichen",
"info" : "Query Parameter werden an die Ziel Url weitergereicht"
"queryParameters": {
".": "Query Parameter weiterreichen",
"info": "Query Parameter werden an die Ziel Url weitergereicht"
},
"save" : "Speichern",
"save": "Speichern",
"search": "Suche",
"share": {
".": "Teilen",
@@ -671,6 +917,18 @@
},
"validated": "Validiert"
},
"dyndns": {
".": "DynDns",
"create": "Erstelle DynDns Token",
"new": "Erstelle neues DynDns Token",
"token": {
".": "DynDns Token",
"copied": "In die Zwischenablage kopiert",
"copy": "Token in die Zwischenablage kopieren",
"exists": "Du hast aktuell ein aktives DynDns Token. Wenn du ein neues Token generierst, wird das aktuelle Token gelöscht.",
"store": "Bitte speichere das Token sicher ab. Nach Verlassen der Seite wird es nicht mehr angezeigt."
}
},
"unavailable": {
".": "Zugriff verweigert",
"text": "Dieser Benutzer existiert nicht oder du hast keine Berechtigungen, um auf das Profil zuzugreifen."
@@ -703,9 +961,15 @@
},
"vouchers": {
".": "Gutscheincodes",
"add-on": "Add-On",
"info": "Hier kannst du Gutscheincodes für Add-Ons und Registrierung generieren.",
"registration": "Registrierung",
"addon": {
".": "Add-On",
"text": "Dieser Gutscheincode ist für verschiedene Erweiterungen für deinen Account."
},
"info": "Hier kannst du verschiedene Gutscheincodes generieren.",
"registration": {
".": "Registrierung",
"text": "Dieser Gutscheincode ist für die Registrierung eines neuen Accounts."
},
"stored-safely": {
".": "Da wir keine Verbindungen von Gutscheincodes zu deinem Account speichern, speichere diesen Code bitte selber sicher ab. Falls du die Seite verlässt oder neu lädst ist der Code nicht mehr verfügbar!",
"confirm": "Ich habe den Code sicher abgespeichert!"