Added Phase‑1 continuation work across deep links, offline moderation queue, and admin push.
resources/js/admin/mobile/lib.
- Admin push is end‑to‑end: new backend model/migration/service/job + API endpoints, admin runtime config, push‑aware
service worker, and a settings toggle via useAdminPushSubscription. Notifications now auto‑refresh on push.
- New PHP/JS tests: admin push API feature test and queue/haptics unit tests
Added admin-specific PWA icon assets and wired them into the admin manifest, service worker, and admin shell, plus a
new “Device & permissions” card in mobile Settings with a persistent storage action and translations.
Details: public/manifest.json, public/admin-sw.js, resources/views/admin.blade.php, new icons in public/; new hook
resources/js/admin/mobile/hooks/useDevicePermissions.ts, helpers/tests in resources/js/admin/mobile/lib/
devicePermissions.ts + resources/js/admin/mobile/lib/devicePermissions.test.ts, and Settings UI updates in resources/
js/admin/mobile/SettingsPage.tsx with copy in resources/js/admin/i18n/locales/en/management.json and resources/js/
admin/i18n/locales/de/management.json.
This commit is contained in:
@@ -1955,7 +1955,14 @@
|
||||
"unfeatureSuccess": "Highlight entfernt",
|
||||
"featureFailed": "Highlight konnte nicht geändert werden.",
|
||||
"approveSuccess": "Foto freigegeben",
|
||||
"approveFailed": "Freigabe fehlgeschlagen."
|
||||
"approveFailed": "Freigabe fehlgeschlagen.",
|
||||
"queued": "Aktion gespeichert. Wird synchronisiert, sobald du online bist.",
|
||||
"queueTitle": "Änderungen warten auf Sync",
|
||||
"queueOnline": "{{count}} Aktionen bereit zur Synchronisierung.",
|
||||
"queueOffline": "{{count}} Aktionen gespeichert – offline.",
|
||||
"queueSync": "Sync",
|
||||
"queueWaiting": "Offline",
|
||||
"syncFailed": "Synchronisierung fehlgeschlagen. Bitte später erneut versuchen."
|
||||
},
|
||||
"mobileProfile": {
|
||||
"title": "Profil",
|
||||
@@ -1976,6 +1983,39 @@
|
||||
"tenantBadge": "Tenant #{{id}}",
|
||||
"notificationsTitle": "Benachrichtigungen",
|
||||
"notificationsLoading": "Lade Einstellungen ...",
|
||||
"pushTitle": "App Push",
|
||||
"pushUnsupported": "Push-Benachrichtigungen werden auf diesem Gerät nicht unterstützt.",
|
||||
"pushDenied": "Benachrichtigungen sind im Browser blockiert.",
|
||||
"pushActive": "Push aktiv",
|
||||
"pushInactive": "Push deaktiviert",
|
||||
"pushLoading": "Lädt ...",
|
||||
"deviceTitle": "Gerät & Berechtigungen",
|
||||
"deviceDescription": "Halte die Admin-App schnell, offline-bereit und für Benachrichtigungen freigeschaltet.",
|
||||
"deviceLoading": "Gerätestatus wird geprüft ...",
|
||||
"deviceStorageAction": "Offline-Schutz aktivieren",
|
||||
"deviceStorageError": "Offline-Schutz konnte nicht aktiviert werden.",
|
||||
"deviceStatusValues": {
|
||||
"granted": "Erlaubt",
|
||||
"denied": "Blockiert",
|
||||
"prompt": "Berechtigung nötig",
|
||||
"unsupported": "Nicht unterstützt",
|
||||
"persisted": "Geschützt",
|
||||
"available": "Nicht geschützt"
|
||||
},
|
||||
"deviceStatus": {
|
||||
"notifications": {
|
||||
"label": "Benachrichtigungen",
|
||||
"description": "Erlaubt Warnungen und Admin-Updates."
|
||||
},
|
||||
"camera": {
|
||||
"label": "Kamera",
|
||||
"description": "Für QR-Scans und schnelle Aufnahmen."
|
||||
},
|
||||
"storage": {
|
||||
"label": "Offline-Speicher",
|
||||
"description": "Schützt zwischengespeicherte Daten vor Löschung."
|
||||
}
|
||||
},
|
||||
"pref": {}
|
||||
},
|
||||
"events": {
|
||||
|
||||
Reference in New Issue
Block a user