implemented event package addons with filament resource, event-admin purchase path and notifications, showing up in purchase history

This commit is contained in:
Codex Agent
2025-11-21 11:25:45 +01:00
parent 07fe049b8a
commit 7a8d22a238
58 changed files with 3339 additions and 60 deletions

View File

@@ -72,6 +72,9 @@
"galleryWarningDay": "Galerie läuft in {days} Tag ab.",
"galleryWarningDays": "Galerie läuft in {days} Tagen ab.",
"galleryExpired": "Galerie ist abgelaufen. Gäste sehen keine Inhalte mehr.",
"unlimited": "Unbegrenzt"
"unlimited": "Unbegrenzt",
"buyMorePhotos": "Mehr Fotos freischalten",
"buyMoreGuests": "Mehr Gäste freischalten",
"extendGallery": "Galerie verlängern"
}
}

View File

@@ -80,6 +80,32 @@
"loadingMore": "Laden…"
}
},
"addOns": {
"title": "Add-on-Verlauf",
"description": "Einmalige Add-ons, die für diesen Tenant gebucht wurden.",
"empty": "Noch keine Add-ons gebucht.",
"badge": "Add-ons",
"table": {
"addon": "Add-on",
"event": "Event",
"amount": "Betrag",
"status": "Status",
"purchased": "Gekauft",
"eventFallback": "Event archiviert"
},
"status": {
"pending": "In Bearbeitung",
"completed": "Abgeschlossen",
"failed": "Fehlgeschlagen"
},
"extras": {
"photos": "+{{count}} Fotos",
"guests": "+{{count}} Gäste",
"gallery": "+{{count}} Galerietage"
},
"loadMore": "Weitere Add-ons laden",
"loadingMore": "Add-ons werden geladen…"
},
"packages": {
"title": "Paket-Historie",
"description": "Übersicht über aktive und vergangene Pakete.",
@@ -382,7 +408,8 @@
"backToEvent": "Event öffnen",
"copy": "Link kopieren",
"copied": "Kopiert!",
"deactivate": "Deaktivieren"
"deactivate": "Deaktivieren",
"buyMoreGuests": "Mehr Gäste freischalten"
},
"labels": {
"usage": "Nutzung",
@@ -511,11 +538,16 @@
"loadFailed": "Event konnte nicht geladen werden.",
"notFoundTitle": "Event nicht gefunden",
"notFoundBody": "Ohne gültige Kennung können wir keine Daten laden. Kehre zur Eventliste zurück und wähle dort ein Event aus.",
"toggleFailed": "Status konnte nicht angepasst werden."
"toggleFailed": "Status konnte nicht angepasst werden.",
"checkoutMissing": "Checkout konnte nicht gestartet werden.",
"checkoutFailed": "Add-on Checkout fehlgeschlagen."
},
"alerts": {
"failedTitle": "Aktion fehlgeschlagen"
},
"success": {
"addonApplied": "Add-on angewendet. Limits aktualisieren sich in Kürze."
},
"placeholders": {
"untitled": "Unbenanntes Event"
},
@@ -526,7 +558,10 @@
"tasks": "Aufgaben verwalten",
"invites": "Einladungen & Layouts",
"photos": "Fotos moderieren",
"refresh": "Aktualisieren"
"refresh": "Aktualisieren",
"buyMorePhotos": "Mehr Fotos freischalten",
"buyMoreGuests": "Mehr Gäste freischalten",
"extendGallery": "Galerie verlängern"
},
"workspace": {
"detailSubtitle": "Behalte Status, Aufgaben und Einladungen deines Events im Blick.",
@@ -552,6 +587,23 @@
"activeYes": "Ja",
"activeNo": "Nein"
},
"sections": {
"addons": {
"title": "Add-ons & Upgrades",
"description": "Zuletzt gebuchte Add-ons für dieses Event.",
"status": {
"completed": "Aktiv",
"pending": "In Bearbeitung",
"failed": "Fehlgeschlagen"
},
"purchasedAt": "Gekauft {{date}}",
"summary": {
"photos": "+{{count}} Fotos",
"guests": "+{{count}} Gäste",
"gallery": "+{{count}} Tage Galerie"
}
}
},
"status": {
"published": "Veröffentlicht",
"draft": "Entwurf",

View File

@@ -72,6 +72,9 @@
"galleryWarningDay": "Gallery expires in {days} day.",
"galleryWarningDays": "Gallery expires in {days} days.",
"galleryExpired": "Gallery has expired. Guests can no longer access the photos.",
"unlimited": "Unlimited"
"unlimited": "Unlimited",
"buyMorePhotos": "Unlock more photos",
"buyMoreGuests": "Unlock more guests",
"extendGallery": "Extend gallery"
}
}

View File

@@ -80,6 +80,32 @@
"loadingMore": "Loading…"
}
},
"addOns": {
"title": "Add-on history",
"description": "One-time add-ons purchased for this tenant.",
"empty": "No add-ons purchased yet.",
"badge": "Add-ons",
"table": {
"addon": "Add-on",
"event": "Event",
"amount": "Amount",
"status": "Status",
"purchased": "Purchased",
"eventFallback": "Event archived"
},
"status": {
"pending": "Processing",
"completed": "Completed",
"failed": "Failed"
},
"extras": {
"photos": "+{{count}} photos",
"guests": "+{{count}} guests",
"gallery": "+{{count}} gallery days"
},
"loadMore": "Load more add-ons",
"loadingMore": "Loading add-ons…"
},
"packages": {
"title": "Package history",
"description": "Overview of current and past packages.",
@@ -382,7 +408,8 @@
"backToEvent": "Open event",
"copy": "Copy link",
"copied": "Copied!",
"deactivate": "Deactivate"
"deactivate": "Deactivate",
"buyMoreGuests": "Unlock more guests"
},
"labels": {
"usage": "Usage",
@@ -511,11 +538,16 @@
"loadFailed": "Event could not be loaded.",
"notFoundTitle": "Event not found",
"notFoundBody": "Without a valid identifier we cant load the data. Return to the list and choose an event.",
"toggleFailed": "Status could not be updated."
"toggleFailed": "Status could not be updated.",
"checkoutMissing": "Checkout could not be started.",
"checkoutFailed": "Add-on checkout failed."
},
"alerts": {
"failedTitle": "Action failed"
},
"success": {
"addonApplied": "Add-on applied. Limits will refresh shortly."
},
"placeholders": {
"untitled": "Untitled event"
},
@@ -526,7 +558,10 @@
"tasks": "Manage tasks",
"invites": "Invites & layouts",
"photos": "Moderate photos",
"refresh": "Refresh"
"refresh": "Refresh",
"buyMorePhotos": "Unlock more photos",
"buyMoreGuests": "Unlock more guests",
"extendGallery": "Extend gallery"
},
"workspace": {
"detailSubtitle": "Keep status, tasks, and invites of your event in one view.",
@@ -552,6 +587,23 @@
"activeYes": "Yes",
"activeNo": "No"
},
"sections": {
"addons": {
"title": "Add-ons & Boosts",
"description": "Recently purchased add-ons for this event.",
"status": {
"completed": "Active",
"pending": "Processing",
"failed": "Failed"
},
"purchasedAt": "Purchased {{date}}",
"summary": {
"photos": "+{{count}} photos",
"guests": "+{{count}} guests",
"gallery": "+{{count}} days gallery"
}
}
},
"status": {
"published": "Published",
"draft": "Draft",