Limit-Status im Upload-Flow anzeigen (Warnbanner + Sperrzustände).
Upload-Fehlercodes auswerten und freundliche Dialoge zeigen.
This commit is contained in:
@@ -188,6 +188,14 @@ export const messages: Record<LocaleCode, NestedMessages> = {
|
||||
title: 'Nicht gefunden',
|
||||
description: 'Die Seite konnte nicht gefunden werden.',
|
||||
},
|
||||
galleryCountdown: {
|
||||
expiresIn: 'Noch {days} Tage online',
|
||||
expiresToday: 'Letzter Tag!',
|
||||
expired: 'Galerie abgelaufen',
|
||||
description: 'Sichere jetzt deine Lieblingsfotos – die Galerie verschwindet bald.',
|
||||
expiredDescription: 'Nur die Veranstalter:innen können die Galerie jetzt noch verlängern.',
|
||||
ctaUpload: 'Letzte Fotos hochladen',
|
||||
},
|
||||
galleryPublic: {
|
||||
title: 'Galerie',
|
||||
loading: 'Galerie wird geladen ...',
|
||||
@@ -298,6 +306,63 @@ export const messages: Record<LocaleCode, NestedMessages> = {
|
||||
limitReached: 'Upload-Limit erreicht ({used} / {max} Fotos). Bitte kontaktiere die Veranstalter für ein Upgrade.',
|
||||
limitUnlimited: 'unbegrenzt',
|
||||
limitWarning: 'Nur noch {remaining} von {max} Fotos möglich. Bitte kontaktiere die Veranstalter für ein Upgrade.',
|
||||
galleryWarningDay: 'Galerie läuft in {days} Tag ab. Teile deine Fotos rechtzeitig!',
|
||||
galleryWarningDays: 'Galerie läuft in {days} Tagen ab. Teile deine Fotos rechtzeitig!',
|
||||
status: {
|
||||
title: 'Dein Paketstatus',
|
||||
subtitle: 'Behalte deine Kontingente im Blick, bevor es eng wird.',
|
||||
badges: {
|
||||
ok: 'Bereit',
|
||||
warning: 'Hinweis',
|
||||
limit_reached: 'Limit erreicht',
|
||||
unlimited: 'Unbegrenzt',
|
||||
},
|
||||
cards: {
|
||||
photos: {
|
||||
title: 'Fotos',
|
||||
remaining: 'Nur noch {remaining} von {limit} Fotos möglich',
|
||||
unlimited: 'Unbegrenzte Foto-Uploads inklusive',
|
||||
},
|
||||
guests: {
|
||||
title: 'Gäste',
|
||||
remaining: '{remaining} Gäste frei (max. {limit})',
|
||||
unlimited: 'Beliebig viele Gäste erlaubt',
|
||||
},
|
||||
},
|
||||
},
|
||||
dialogs: {
|
||||
close: 'Verstanden',
|
||||
photoLimit: {
|
||||
title: 'Upload-Limit erreicht',
|
||||
description: 'Es wurden {used} von {limit} Fotos hochgeladen. Bitte kontaktiere das Team für ein Upgrade.',
|
||||
hint: 'Tipp: Größere Pakete schalten sofort wieder Uploads frei.',
|
||||
},
|
||||
deviceLimit: {
|
||||
title: 'Gerätelimit erreicht',
|
||||
description: 'Dieses Gerät hat sein Upload-Kontingent ausgeschöpft.',
|
||||
hint: 'Nutze ein anderes Gerät oder sprich die Veranstalter:innen an.',
|
||||
},
|
||||
packageMissing: {
|
||||
title: 'Event pausiert Uploads',
|
||||
description: 'Für dieses Event sind aktuell keine Uploads freigeschaltet.',
|
||||
hint: 'Bitte kontaktiere die Veranstalter:innen für weitere Informationen.',
|
||||
},
|
||||
galleryExpired: {
|
||||
title: 'Galerie abgelaufen',
|
||||
description: 'Die Galerie ist geschlossen – neue Uploads sind nicht mehr möglich.',
|
||||
hint: 'Nur die Veranstalter:innen können die Galerie verlängern.',
|
||||
},
|
||||
csrf: {
|
||||
title: 'Sitzung abgelaufen',
|
||||
description: 'Bitte lade die Seite neu und versuche den Upload anschließend erneut.',
|
||||
hint: 'Aktualisiere die Seite, um eine neue Sitzung zu starten.',
|
||||
},
|
||||
generic: {
|
||||
title: 'Upload fehlgeschlagen',
|
||||
description: 'Der Upload konnte nicht abgeschlossen werden. Bitte versuche es später erneut.',
|
||||
hint: 'Bleibt das Problem bestehen, kontaktiere die Veranstalter:innen.',
|
||||
},
|
||||
},
|
||||
errors: {
|
||||
photoLimit: 'Upload-Limit erreicht. Bitte kontaktiere die Veranstalter für ein Upgrade.',
|
||||
deviceLimit: 'Dieses Gerät hat das Upload-Limit erreicht. Bitte wende dich an die Veranstalter.',
|
||||
@@ -551,6 +616,14 @@ export const messages: Record<LocaleCode, NestedMessages> = {
|
||||
title: 'Not found',
|
||||
description: 'We could not find the page you requested.',
|
||||
},
|
||||
galleryCountdown: {
|
||||
expiresIn: '{days} days remaining',
|
||||
expiresToday: 'Final day!',
|
||||
expired: 'Gallery expired',
|
||||
description: 'Save your favourite photos before the gallery goes offline.',
|
||||
expiredDescription: 'Only the organizers can extend the gallery now.',
|
||||
ctaUpload: 'Share last photos',
|
||||
},
|
||||
galleryPublic: {
|
||||
title: 'Gallery',
|
||||
loading: 'Loading gallery ...',
|
||||
@@ -661,6 +734,63 @@ export const messages: Record<LocaleCode, NestedMessages> = {
|
||||
limitReached: 'Upload limit reached ({used} / {max} photos). Contact the organizers for an upgrade.',
|
||||
limitUnlimited: 'unlimited',
|
||||
limitWarning: 'Only {remaining} of {max} photos left. Please contact the organizers for an upgrade.',
|
||||
galleryWarningDay: 'Gallery expires in {days} day. Upload your photos soon!',
|
||||
galleryWarningDays: 'Gallery expires in {days} days. Upload your photos soon!',
|
||||
status: {
|
||||
title: 'Your package status',
|
||||
subtitle: 'Keep an eye on your remaining allowances.',
|
||||
badges: {
|
||||
ok: 'Ready',
|
||||
warning: 'Heads-up',
|
||||
limit_reached: 'Limit reached',
|
||||
unlimited: 'Unlimited',
|
||||
},
|
||||
cards: {
|
||||
photos: {
|
||||
title: 'Photos',
|
||||
remaining: '{remaining} of {limit} photo slots left',
|
||||
unlimited: 'Unlimited photo uploads included',
|
||||
},
|
||||
guests: {
|
||||
title: 'Guests',
|
||||
remaining: '{remaining} guest slots free (max {limit})',
|
||||
unlimited: 'Unlimited guests allowed',
|
||||
},
|
||||
},
|
||||
},
|
||||
dialogs: {
|
||||
close: 'Got it',
|
||||
photoLimit: {
|
||||
title: 'Upload limit reached',
|
||||
description: '{used} of {limit} photos are already uploaded. Please reach out to upgrade your package.',
|
||||
hint: 'Tip: Upgrading the package re-enables uploads instantly.',
|
||||
},
|
||||
deviceLimit: {
|
||||
title: 'Device limit reached',
|
||||
description: 'This device has used all available upload slots.',
|
||||
hint: 'Try a different device or contact the organizers.',
|
||||
},
|
||||
packageMissing: {
|
||||
title: 'Uploads paused',
|
||||
description: 'This event is currently not accepting new uploads.',
|
||||
hint: 'Check in with the organizers for the latest status.',
|
||||
},
|
||||
galleryExpired: {
|
||||
title: 'Gallery closed',
|
||||
description: 'The gallery has expired and no new uploads can be added.',
|
||||
hint: 'Only the organizers can extend the gallery window.',
|
||||
},
|
||||
csrf: {
|
||||
title: 'Session expired',
|
||||
description: 'Refresh the page and try the upload again.',
|
||||
hint: 'Reload the page to start a new session.',
|
||||
},
|
||||
generic: {
|
||||
title: 'Upload failed',
|
||||
description: 'We could not complete the upload. Please try again later.',
|
||||
hint: 'If it keeps happening, reach out to the organizers.',
|
||||
},
|
||||
},
|
||||
errors: {
|
||||
photoLimit: 'Upload limit reached. Contact the organizers for an upgrade.',
|
||||
deviceLimit: 'This device reached its upload limit. Please contact the organizers.',
|
||||
|
||||
Reference in New Issue
Block a user