Add storage configuration, localization updates, and feed generation

- Added `publicDisk` configuration to `filesystems.php`.
- Expanded locale translations in `es.json` and `de.json`.
- Implemented RSS, Atom, and JSON feed views.
- Added `feed.php` configuration for feed generation.
- Introduced `ImageController` for image handling.
- Updated application routing to include `api.php`.
This commit is contained in:
HolgerHatGarKeineNode
2025-11-21 16:23:55 +01:00
parent d12ea30d5e
commit efe44cf344
31 changed files with 2493 additions and 208 deletions

View File

@@ -9,6 +9,7 @@
"Abbrechen": "",
"Absagen": "",
"Aktionen": "",
"Aktiv": "",
"Aktualisiert am": "",
"All rights reserved.": "Alle Rechte vorbehalten.",
"Alle Meetups anzeigen": "",
@@ -16,7 +17,10 @@
"App": "",
"Appearance": "Darstellung",
"Are you sure you want to delete your account?": "Möchten Sie Ihr Konto wirklich löschen?",
"Auf Karte sichtbar": "",
"aus deinen Meetups entfernen?": "",
"Ausführliche Beschreibung des Kurses": "",
"Ausführliche Beschreibung und Biografie": "",
"Authentication Code": "Authentifizierungscode",
"Back": "Zurück",
"Bearbeiten": "",
@@ -24,6 +28,7 @@
"Beschreibung": "",
"Bist du sicher, dass du dieses Event löschen möchtest?": "",
"Bitcoin Meetups": "",
"Breitengrad": "",
"Cancel": "Abbrechen",
"Click here to re-send the verification email.": "Klicken Sie hier, um eine neue Verifizierungs-E-Mail zu erhalten.",
"Close": "Schließen",
@@ -40,13 +45,25 @@
"Dein Name": "",
"Delete account": "Konto löschen",
"Delete your account and all of its resources": "Löschen Sie Ihr Konto und alle zugehörigen Ressourcen",
"Der Anzeigename für diesen Kurs": "",
"Der Anzeigename für dieses Meetup": "",
"Der Dozent, der diesen Kurs leitet": "",
"Details über das Event": "",
"Details/Anmelden": "",
"Die nächstgrößte Stadt oder Ort": "",
"Disable 2FA": "2FA deaktivieren",
"Disabled": "Deaktiviert",
"Documentation": "Dokumentation",
"Don't have an account?": "Sie haben noch kein Konto?",
"Dozent": "",
"Dozent aktualisieren": "",
"Dozent auswählen": "",
"Dozent bearbeiten": "",
"Dozent erfolgreich aktualisiert!": "",
"Dozent erfolgreich erstellt!": "",
"Dozenten": "",
"Dozenten anlegen": "",
"Dozenten erstellen": "",
"Du bist nicht eingloggt und musst deshalb den Namen selbst eintippen.": "",
"Du kannst es jederzeit wieder hinzufügen.": "",
"Each recovery code can be used once to access your account and will be removed after use. If you need more, click Regenerate Codes above.": "Jeder Wiederherstellungscode kann einmal für den Zugriff auf Ihr Konto verwendet werden und wird nach der Verwendung gelöscht. Wenn Sie weitere Codes benötigen, klicken Sie oben auf „Codes neu generieren“.",
@@ -70,6 +87,8 @@
"Environment file already exists.": "Umgebungsdatei ist bereits vorhanden.",
"Environment file not found.": "Umgebungsdatei nicht gefunden.",
"errors": "Fehler",
"Ersteller des Dozenten": "",
"Ersteller des Kurses": "",
"Ersteller des Meetups": "",
"Erstellt am": "",
"Erstellt von": "",
@@ -87,6 +106,7 @@
"Forgot password": "Passwort vergessen",
"Forgot your password?": "Passwort vergessen?",
"Full name": "Vollständiger Name",
"Füge eine neue Stadt zur Datenbank hinzu.": "",
"Gemeinschaft": "",
"Gemeinschafts- oder Organisationsname": "",
"Go to page :page": "Gehe zur Seite :page",
@@ -98,24 +118,42 @@
"If you did not create an account, no further action is required.": "Wenn Sie kein Konto erstellt haben, sind keine weiteren Handlungen nötig.",
"If you did not request a password reset, no further action is required.": "Wenn Sie kein Zurücksetzen des Passworts beantragt haben, sind keine weiteren Handlungen nötig.",
"If you're having trouble clicking the \":actionText\" button, copy and paste the URL below\ninto your web browser:": "Sollten Sie Schwierigkeiten haben, die Schaltfläche \":actionText\" zu klicken, kopieren Sie den nachfolgenden Link\n in Ihre Adresszeile des Browsers.",
"Inaktiv": "",
"Invalid filename.": "Ungültiger Dateiname.",
"Invalid JSON was returned from the route.": "Von der Route wurde ein ungültiger JSON-Code zurückgegeben.",
"Ist dieser Dozent aktiv?": "",
"Kalender-Stream-URL kopieren": "",
"Karte": "",
"Kartenansicht öffnen": "",
"Keine": "",
"Keine bevorstehenden Termine": "",
"Keine Meetups zugeordnet": "",
"Kommende Veranstaltungen": "",
"Kontakt & Links": "",
"Kurs aktualisieren": "",
"Kurs bearbeiten": "",
"Kurs erfolgreich aktualisiert!": "",
"Kurs erfolgreich erstellt!": "",
"Kurs erstellen": "",
"Kurse": "",
"Kurze Berufsbezeichnung oder Rolle": "",
"Kurze Beschreibung des Meetups": "",
"Kurze Vorstellung (wird auf Kurs-Seiten angezeigt)": "",
"Land": "",
"Land auswählen": "",
"length": "Länge",
"Letzte Änderungszeit": "",
"Light": "Hell",
"Lightning Adresse": "",
"Lightning Node ID": "",
"Lightning-Adresse für Zahlungen": "",
"Link": "",
"Link zu weiteren Informationen": "",
"Link zur Telegram-Gruppe oder zum Kanal": "",
"Links": "",
"Links & Soziale Medien": "",
"LNURL": "",
"LNURL für Lightning-Zahlungen": "",
"Location": "Standort",
"Log in": "Anmelden",
"log in": "anmelden",
@@ -127,6 +165,7 @@
"login using a recovery code": "Mit einem Wiederherstellungscode anmelden",
"login using an authentication code": "Anmelden mit einem Authentifizierungscode",
"Logout": "Abmelden",
"Längengrad": "",
"Manage your profile and account settings": "Verwalten Sie Ihr Profil und Ihre Kontoeinstellungen",
"Manage your two-factor authentication settings": "Verwalten Sie Ihre Einstellungen für die Zwei-Faktor-Authentifizierung",
"Matrix": "",
@@ -136,6 +175,8 @@
"Meetup bearbeiten": "",
"Meetup entfernen?": "",
"Meetup erfolgreich aktualisiert!": "",
"Meetup erfolgreich erstellt!": "",
"Meetup erstellen": "",
"Meetup hinzufügen...": "",
"Meetup suchen...": "",
"Meetups": "",
@@ -145,9 +186,16 @@
"Möchtest du": "",
"Name": "Name",
"Name eingeben": "",
"Neuen Dozenten erstellen": "",
"Neuen Kurs erstellen": "",
"Neuer Kurs": "",
"Neues Event erstellen": "",
"Neues Meetup erstellen": "",
"New password": "Neues Passwort",
"no location set": "",
"Node ID": "",
"Nostr": "",
"Nostr öffentlicher Schlüssel": "",
"Nostr öffentlicher Schlüssel oder Bezeichner": "",
"Not Found": "Nicht gefunden",
"Nächster Termin": "",
@@ -163,6 +211,9 @@
"Pagination Navigation": "Seiten-Navigation",
"Password": "Passwort",
"Payment Required": "Zahlung erforderlich",
"PayNym": "",
"PayNym für Bitcoin-Zahlungen": "",
"Persönliche Webseite oder Portfolio": "",
"Platform": "Plattform",
"Please click the button below to verify your email address.": "Bitte klicken Sie auf die Schaltfläche, um Ihre E-Mail-Adresse zu bestätigen.",
"Please confirm access to your account by entering one of your emergency recovery codes.": "Bitte bestätigen Sie den Zugriff auf Ihr Konto, indem Sie einen Ihrer Notfall-Wiederherstellungscodes eingeben.",
@@ -194,14 +245,22 @@
"SimpleX": "",
"Simplex": "",
"SimpleX Chat Kontaktinformationen": "",
"Soll dieses Meetup auf der Karte angezeigt werden?": "",
"Stadt": "",
"Stadt auswählen": "",
"Stadt erstellen": "",
"Stadt hinzufügen": "",
"Stadtname": "",
"Standort": "",
"Startzeit": "",
"Status": "",
"Success!": "",
"Suche dein Land...": "",
"Suche nach Dozenten...": "",
"Suche nach Kursen...": "",
"Suche nach Meetups...": "",
"Suche passende Stadt...": "",
"Suche passenden Dozenten...": "",
"System": "System",
"System-generierte ID (nur lesbar)": "",
"Systeminformationen": "",
@@ -227,6 +286,7 @@
"Two-factor authentication is now enabled. Scan the QR code or enter the setup key in your authenticator app.": "Die Zwei-Faktor-Authentifizierung ist nun aktiviert. Scannen Sie den QR-Code oder geben Sie den Setup-Schlüssel in Ihrer Authentifizierungs-App ein.",
"Unauthorized": "Nicht autorisiert",
"Unbekannt": "",
"Untertitel": "",
"Update password": "Passwort aktualisieren",
"Update the appearance settings for your account": "Aktualisieren Sie die Darstellungseinstellungen für Ihr Konto",
"Update your account's appearance settings": "Aktualisieren Sie die Darstellungseinstellungen Ihres Kontos",
@@ -236,7 +296,10 @@
"Verify Email Address": "E-Mail-Adresse bestätigen",
"Vielleicht": "",
"View Recovery Codes": "Wiederherstellungscodes anzeigen",
"Vollständiger Name des Dozenten": "",
"Wallpaper": "",
"Wann dieser Dozent erstellt wurde": "",
"Wann dieser Kurs erstellt wurde": "",
"Wann dieses Meetup erstellt wurde": "",
"Wann findet das Event statt?": "",
"Webseite": "",
@@ -249,78 +312,15 @@
"Wähle dein Land...": "",
"You are receiving this email because we received a password reset request for your account.": "Sie erhalten diese E-Mail, weil wir einen Antrag auf eine Zurücksetzung Ihres Passworts bekommen haben.",
"Your email address is unverified.": "Ihre E-Mail-Adresse ist nicht verifiziert.",
"z.B. Berlin": "",
"z.B. Café Mustermann, Hauptstr. 1": "",
"Zahlungsinformationen": "",
"Zoom = STRG+Scroll": "",
"Zurück zum Meetup": "",
"Zusagen": "",
"Zusätzliche Informationen": "",
"Öffnen/RSVP": "",
"Über uns": "",
"no location set": "",
"Kurse": "",
"Dozenten": "",
"Kurs erfolgreich erstellt!": "",
"Neuen Kurs erstellen": "",
"Der Anzeigename für diesen Kurs": "",
"Dozent": "",
"Dozent auswählen": "",
"Suche passenden Dozenten...": "",
"Der Dozent, der diesen Kurs leitet": "",
"Ausführliche Beschreibung des Kurses": "",
"Kurs erstellen": "",
"Kurs erfolgreich aktualisiert!": "",
"Kurs bearbeiten": "",
"Ersteller des Kurses": "",
"Wann dieser Kurs erstellt wurde": "",
"Kurs aktualisieren": "",
"Suche nach Kursen...": "",
"Neuer Kurs": "",
"Über den Kurs": "",
"Über den Dozenten": "",
"Details/Anmelden": "",
"Dozent erfolgreich erstellt!": "",
"Neuen Dozenten erstellen": "",
"Vollständiger Name des Dozenten": "",
"Untertitel": "",
"Kurze Berufsbezeichnung oder Rolle": "",
"Status": "",
"Ist dieser Dozent aktiv?": "",
"Kurze Vorstellung (wird auf Kurs-Seiten angezeigt)": "",
"Ausführliche Beschreibung und Biografie": "",
"Persönliche Webseite oder Portfolio": "",
"Nostr öffentlicher Schlüssel": "",
"Zahlungsinformationen": "",
"Lightning Adresse": "",
"Lightning-Adresse für Zahlungen": "",
"LNURL": "",
"LNURL für Lightning-Zahlungen": "",
"Node ID": "",
"Lightning Node ID": "",
"PayNym": "",
"PayNym für Bitcoin-Zahlungen": "",
"Dozenten erstellen": "",
"Dozent erfolgreich aktualisiert!": "",
"Dozent bearbeiten": "",
"Ersteller des Dozenten": "",
"Wann dieser Dozent erstellt wurde": "",
"Dozent aktualisieren": "",
"Suche nach Dozenten...": "",
"Dozenten anlegen": "",
"Aktiv": "",
"Inaktiv": "",
"Meetup erfolgreich erstellt!": "",
"Neues Meetup erstellen": "",
"Stadt hinzufügen": "",
"Auf Karte sichtbar": "",
"Soll dieses Meetup auf der Karte angezeigt werden?": "",
"Keine": "",
"Meetup erstellen": "",
"Füge eine neue Stadt zur Datenbank hinzu.": "",
"Stadtname": "",
"z.B. Berlin": "",
"Land auswählen": "",
"Breitengrad": "",
"Längengrad": "",
"Stadt erstellen": "",
"Kalender-Stream-URL kopieren": ""
"Über den Kurs": "",
"Über uns": ""
}