rearranged tenant admin layout, invite layouts now visible and manageable

This commit is contained in:
Codex Agent
2025-10-29 12:36:34 +01:00
parent a7bbf230fd
commit d781448914
31 changed files with 2190 additions and 1685 deletions

View File

@@ -200,12 +200,12 @@ export default function EventFormPage() {
}
if (!trimmedSlug) {
setError('Bitte waehle einen Slug fuer die Event-URL.');
setError('Bitte wähle einen Slug für die Event-URL.');
return;
}
if (!form.eventTypeId) {
setError('Bitte waehle einen Event-Typ aus.');
setError('Bitte wähle einen Event-Typ aus.');
return;
}
@@ -242,7 +242,7 @@ export default function EventFormPage() {
}
} catch (err) {
if (!isAuthError(err)) {
setError('Speichern fehlgeschlagen. Bitte pruefe deine Eingaben.');
setError('Speichern fehlgeschlagen. Bitte prüfe deine Eingaben.');
}
} finally {
setSaving(false);
@@ -326,14 +326,14 @@ export default function EventFormPage() {
onClick={() => navigate(ADMIN_EVENTS_PATH)}
className="border-pink-200 text-pink-600 hover:bg-pink-50"
>
<ArrowLeft className="h-4 w-4" /> Zurueck zur Liste
<ArrowLeft className="h-4 w-4" /> Zurück zur Liste
</Button>
);
return (
<AdminLayout
title={isEdit ? 'Event bearbeiten' : 'Neues Event erstellen'}
subtitle="Fuelle die wichtigsten Angaben aus und teile dein Event mit Gaesten."
subtitle="Fülle die wichtigsten Angaben aus und teile dein Event mit Gästen."
actions={actions}
>
{error && (
@@ -349,7 +349,7 @@ export default function EventFormPage() {
<Sparkles className="h-5 w-5 text-pink-500" /> Eventdetails
</CardTitle>
<CardDescription className="text-sm text-slate-600">
Name, URL und Datum bestimmen das Auftreten deines Events im Gaesteportal.
Name, URL und Datum bestimmen das Auftreten deines Events im Gästeportal.
</CardDescription>
</CardHeader>
<CardContent>
@@ -377,8 +377,8 @@ export default function EventFormPage() {
onChange={(e) => handleSlugChange(e.target.value)}
/>
<p className="text-xs text-slate-500">
Diese Kennung wird intern verwendet. Gaeste betreten dein Event ausschliesslich ueber ihre
Einladungslinks und die dazugehoerigen QR-Layouts.
Diese Kennung wird intern verwendet. Gäste betreten dein Event ausschließlich über ihre
Einladungslinks und die dazugehörigen QR-Layouts.
</p>
</div>
<div className="space-y-2">
@@ -399,7 +399,7 @@ export default function EventFormPage() {
>
<SelectTrigger id="event-type">
<SelectValue
placeholder={eventTypesLoading ? 'Event-Typ wird geladen…' : 'Event-Typ auswaehlen'}
placeholder={eventTypesLoading ? 'Event-Typ wird geladen…' : 'Event-Typ auswählen'}
/>
</SelectTrigger>
<SelectContent>
@@ -412,7 +412,7 @@ export default function EventFormPage() {
</Select>
{!eventTypesLoading && (!eventTypes || eventTypes.length === 0) ? (
<p className="text-xs text-amber-600">
Keine Event-Typen verfuegbar. Bitte lege einen Typ im Adminbereich an.
Keine Event-Typen verfügbar. Bitte lege einen Typ im Adminbereich an.
</p>
) : null}
</div>
@@ -506,7 +506,7 @@ export default function EventFormPage() {
Event sofort veroeffentlichen
</Label>
<p className="text-xs text-slate-600">
Aktiviere diese Option, wenn Gaeste das Event direkt sehen sollen. Du kannst den Status spaeter aendern.
Aktiviere diese Option, wenn Gäste das Event direkt sehen sollen. Du kannst den Status später ändern.
</p>
</div>
</div>