Commit Graph

157 Commits

Author SHA1 Message Date
Codex Agent
718c129a8d onboarding tracking is now wired, the tour can be replayed from Settings, install‑banner reset is included, and empty states in Tasks/Members/Guest Messages now have guided CTAs.
What changed:
  - Onboarding tracking: admin_app_opened on first authenticated dashboard load; event_created, branding_configured,
    and invite_created on their respective actions.
  - Tour replay: Settings now has an “Experience” section to replay the tour (clears tour seen flag and opens via ?tour=1).
  - Empty states: Tasks, Members, and Guest Messages now include richer copy + quick actions.
  - New helpers + copy: Tour storage helpers, new translations, and related UI wiring.
2025-12-28 18:59:12 +01:00
Codex Agent
d5f038d098 Added onboarding + a lightweight install banner to both the mobile login screen and the settings screen, with Android/Chromium
install prompt support and iOS “Share → Add to Home Screen” guidance. Also added a small helper + tests to decide
  when/which banner variant should show, and shared copy in common.json.
2025-12-28 18:26:17 +01:00
Codex Agent
b780d82d62 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.
2025-12-28 15:00:47 +01:00
Codex Agent
4ce409e918 Completed the full mobile app polish pass: navigation feel, safe‑area consistency, input styling, list rows, FAB
patterns, skeleton loading, photo selection/bulk actions with shared‑element transitions, notification detail sheet,
  offline banner, maskable manifest icons, and route prefetching.

  Key changes

  - Navigation/shell: press feedback on all header actions, glassy sticky header and tab bar, safer bottom spacing
    (resources/js/admin/mobile/components/MobileShell.tsx, resources/js/admin/mobile/components/BottomNav.tsx).
  - Forms + lists: shared mobile form controls, list‑style rows in settings/profile, consistent inputs across core
    flows (resources/js/admin/mobile/components/FormControls.tsx, resources/js/admin/mobile/SettingsPage.tsx,
    resources/js/admin/mobile/ProfilePage.tsx, resources/js/admin/mobile/EventFormPage.tsx, resources/js/admin/mobile/
    EventMembersPage.tsx, resources/js/admin/mobile/EventTasksPage.tsx, resources/js/admin/mobile/
    EventGuestNotificationsPage.tsx, resources/js/admin/mobile/NotificationsPage.tsx, resources/js/admin/mobile/
    EventPhotosPage.tsx, resources/js/admin/mobile/EventsPage.tsx).
  - Media workflows: shared‑element photo transitions, selection mode + bulk actions bar (resources/js/admin/mobile/
    EventPhotosPage.tsx).
  - Loading UX: shimmering skeletons (resources/css/app.css, resources/js/admin/mobile/components/Primitives.tsx).
  - PWA polish + perf: maskable icons, offline banner hook, and route prefetch (public/manifest.json, resources/js/
    admin/mobile/hooks/useOnlineStatus.tsx, resources/js/admin/mobile/prefetch.ts, resources/js/admin/main.tsx).
2025-12-27 23:55:48 +01:00
Codex Agent
a8b54b75ea Added app badge support for the guest PWA and wired it to the existing counts (unread notifications + upload queue + pending uploads). When the total hits zero, the badge is cleared; when it’s >0, it’s set. 2025-12-27 14:15:14 +01:00
Codex Agent
1a48c9458e Added pinch/zoom/drag for the photo viewer using @use-gesture/react + @react-spring/web, with swipe navigation only
when not zoomed and double‑tap/double‑click to toggle zoom. I also added a guest haptics toggle in settings (sheet
  + /settings) backed by localStorage.
2025-12-27 14:11:13 +01:00
Codex Agent
fa5a1fa367 Added a guest haptics preference and surfaced it in both the settings sheet and /settings, with safe device detection
and a reduced‑motion guard. Haptics now honor the toggle and still fall back gracefully on iOS (switch disabled when
  navigator.vibrate isn’t available).

  What changed

  - Haptics preference storage + gating: resources/js/guest/lib/haptics.ts
  - Preference hook: resources/js/guest/hooks/useHapticsPreference.ts
  - Settings UI toggle in sheet + page: resources/js/guest/components/settings-sheet.tsx, resources/js/guest/pages/
    SettingsPage.tsx
  - i18n labels: resources/js/guest/i18n/messages.ts
  - Tests: resources/js/guest/lib/__tests__/haptics.test.ts
2025-12-27 14:00:12 +01:00
Codex Agent
3e3a2c49d6 Implemented guest-only PWA using vite-plugin-pwa (the actual published package; @vite-pwa/plugin isn’t on npm) with
injectManifest, a new typed SW source, runtime caching, and a non‑blocking update toast with an action button. The
  guest shell now links a dedicated manifest and theme color, and background upload sync is managed in a single
  PwaManager component.

  Key changes (where/why)

  - vite.config.ts: added VitePWA injectManifest config, guest manifest, and output to /public so the SW can control /
    scope.
  - resources/js/guest/guest-sw.ts: new Workbox SW (precache + runtime caching for guest navigation, GET /api/v1/*,
    images, fonts) and preserves push/sync/notification logic.
  - resources/js/guest/components/PwaManager.tsx: registers SW, shows update/offline toasts, and processes the upload
    queue on sync/online.
  - resources/js/guest/components/ToastHost.tsx: action-capable toasts so update prompts can include a CTA.
  - resources/js/guest/i18n/messages.ts: added common.updateAvailable, common.updateAction, common.offlineReady.
  - resources/views/guest.blade.php: manifest + theme color + apple touch icon.
  - .gitignore: ignore generated public/guest-sw.js and public/guest.webmanifest; public/guest-sw.js removed since it’s
    now build output.
2025-12-27 10:59:44 +01:00
Codex Agent
efc173cf5d komplette überarbeitung des Gäste-Hilfebereichs und Ergänzung eines One-Time-Containers zum Aktualisieren der Hilfedokumente 2025-12-24 16:23:55 +01:00
Codex Agent
42b4b647d7 • Added the two‑step Widerruf flow with an auth‑only CTA on the Widerrufsbelehrung page and a dedicated confirmation
screen where users pick an eligible end‑customer purchase and confirm. Eligibility is enforced server‑side
  (endcustomer_event, within 14 days, no event package created after purchase), refund is issued via Paddle, the
  purchase is marked refunded, the tenant package is deactivated, and a new confirmation email is sent using resources/
  views/emails/partials/layout.blade.php.

  Details

  - New controller + form request for the confirm flow: app/Http/Controllers/WithdrawalController.php, app/Http/
    Requests/Marketing/WithdrawalConfirmRequest.php
  - New confirmation page + CTA: resources/js/pages/marketing/WithdrawalConfirm.tsx, resources/js/pages/legal/Show.tsx
  - Routes + locale rewrites: routes/web.php, resources/js/lib/localizedPath.ts
  - New email notification + template: app/Notifications/Customer/WithdrawalConfirmed.php, resources/views/emails/
    withdrawal-confirmation.blade.php
  - Translations added for marketing UI + backend flash + email copy: public/lang/de/marketing.json, public/lang/en/
    marketing.json, resources/lang/de/marketing.php, resources/lang/en/marketing.php, resources/lang/de/emails.php,
    resources/lang/en/emails.php
  - Tests: tests/Feature/Marketing/WithdrawalConfirmationTest.php
2025-12-24 11:54:15 +01:00
Codex Agent
0f2604309d various fixes for checkout 2025-12-22 21:51:34 +01:00
Codex Agent
84d90c5ece paddle session fixes 2025-12-22 15:11:51 +01:00
Codex Agent
c0c98abbc7 wenn checkout.completed kommt, senden wir jetzt transaction_id +
checkout_id direkt an das Backend, damit der Server die Session via Paddle‑API finalisiert (auch wenn der Webhook
  nicht greift). Dadurch sollte “Zahlung wird verarbeitet” nicht mehr hängen bleiben.
2025-12-22 14:45:51 +01:00
Codex Agent
83712b9a3a fix csrf mismatch 2025-12-22 14:33:36 +01:00
Codex Agent
c947e638eb verschieben des sofortigen verzichts auf das Widerrrufsrecht zum Anlegen des Events 2025-12-22 13:11:16 +01:00
Codex Agent
84234bfb8e Updated checkout to wait for backend confirmation before advancing, added a “Processing payment…” state with retry/ refresh fallback, and now use Paddle totals/currency for purchase records + confirmation emails (with new email translations). 2025-12-22 09:06:48 +01:00
Codex Agent
6ee40745ca added upload queue notifications 2025-12-21 12:37:20 +01:00
Codex Agent
1e6027f438 bessere sichtbarkeit für die kamera-buttons 2025-12-20 19:19:07 +01:00
Codex Agent
d4c7d3f93a kamerazugriff wieder möglich + anleitung zum erlauben des kamerazugriffs 2025-12-20 17:43:40 +01:00
Codex Agent
80985828d8 ungültige paket-IDs werden nun abgefangen 2025-12-20 16:59:14 +01:00
Codex Agent
6500b8df2c neuer checkout-pfad: /de/bestellen/paketID und /en/checkout/PackageID 2025-12-20 16:17:21 +01:00
Codex Agent
778ffc8bb9 added glitchtip using sentry sdk 2025-12-19 10:13:30 +01:00
Codex Agent
53ec427e6e photo visibility for demo events, hardened the demo mode. fixed dark/light mode toggle and notification bell toggle. fixed photo upload page sizes & header visibility. 2025-12-18 21:14:24 +01:00
Codex Agent
7c4067b32b fixed reload flash for task picker page 2025-12-18 14:49:35 +01:00
Codex Agent
403ca71710 card slider now looks good, not messy, card height is unified and long text can be tapped to be fully visible. 2025-12-18 14:09:18 +01:00
Codex Agent
2196346db7 kleinere fixes zur sichtbarkeit der texte in aufgabenkarten und der demo-vorschau auf der homepage. 2025-12-18 13:42:57 +01:00
Codex Agent
2e4226a838 Checkout‑Registrierung validiert jetzt die E‑Mail‑Länge, und die Checkout‑Flows sind Paddle‑only: Stripe‑Endpoints/
Services/Helpers sind entfernt, API/Frontend angepasst, Tests auf Paddle umgestellt. Außerdem wurde die CSP gestrafft
  und Stripe‑Texte in den Abandoned‑Checkout‑Mails ersetzt.
2025-12-18 11:14:42 +01:00
Codex Agent
1c4acda332 updated table structure for photobooth/sparkbooth settings. now there's a separate table for it. update all references and tests. also fixed the notification panel and the lightbox in the guest app. 2025-12-18 08:49:56 +01:00
Codex Agent
ece38fc009 completed addon checkout in mobile event admin 2025-12-17 17:24:26 +01:00
Codex Agent
5f3e7ae8c8 added watermark settings tab on the branding page and added more package details to the billing page, added a new guest notifications page 2025-12-17 16:39:25 +01:00
Codex Agent
efe697f155 Das Abschalten des Aufgaben-Modus wird nun sauber in der App reflektiert- die UI passt sich an und der Admin erhält einen Hinweis, dass die Aufgabenverwaltung nicht verfügbar ist 2025-12-17 13:20:48 +01:00
Codex Agent
03e37d7e23 achievements didn't load correctly 2025-12-17 11:04:08 +01:00
Codex Agent
d64839ba2f fixed notification system and added a new tenant notifications receipt table to track read status and filter messages by scope. 2025-12-17 10:57:19 +01:00
Codex Agent
9e4e9a0d87 Aufgabenkarten in der Gäste-pwa als swipe-barer Stapel umgesetzt. Sofortiges Freigeben von Foto-Uploads als Event-Einstellung implementiert. 2025-12-16 15:30:52 +01:00
Codex Agent
f2473c6f6d enhancements of the homepage in the guest pwa 2025-12-15 19:05:27 +01:00
Codex Agent
a8b6e5d9c4 qr code layouts im mobile admin perfektioniert. 2025-12-14 22:14:30 +01:00
Codex Agent
c8b149d887 using pressables to change numerical values 2025-12-14 18:24:47 +01:00
Codex Agent
a35b56f09d improved layout customize page 2025-12-12 23:19:23 +01:00
Codex Agent
a35f81705d further improvements for the mobile admin 2025-12-12 21:47:34 +01:00
Codex Agent
1719d96fed removed the old event admin components and pages 2025-12-12 13:38:06 +01:00
Codex Agent
7cf7c4b8df further layout preview fixes 2025-12-12 08:34:19 +01:00
Codex Agent
57be7d0030 added more translations and added the new layout wizard 2025-12-11 16:55:12 +01:00
Codex Agent
b4417db5cd weitere perfektionierung der neuen mobile app 2025-12-11 12:18:08 +01:00
Codex Agent
7b01a77083 weiterer fortschritt mit tamagui und dem neuen mobile event admin 2025-12-10 20:01:47 +01:00
Codex Agent
73e550ee87 Implemented a shared mobile shell and navigation aligned to the new architecture, plus refactored the dashboard and
tab flows.

  - Added a dynamic MobileShell with sticky header (notification bell with badge, quick QR when an event is
    active, event switcher for multi-event users) and stabilized bottom tabs (home, tasks, uploads, profile)
    driven by useMobileNav (resources/js/admin/mobile/components/MobileShell.tsx, components/BottomNav.tsx, hooks/
    useMobileNav.ts).
  - Centralized event handling now supports 0/1/many-event states without auto-selecting in multi-tenant mode and
    exposes helper flags/activeSlug for consumers (resources/js/admin/context/EventContext.tsx).
  - Rebuilt the mobile dashboard into explicit states: onboarding/no-event, single-event focus, and multi-event picker
    with featured/secondary actions, KPI strip, and alerts (resources/js/admin/mobile/DashboardPage.tsx).
  - Introduced tab entry points that respect event context and prompt selection when needed (resources/js/admin/
    mobile/TasksTabPage.tsx, UploadsTabPage.tsx). Refreshed tasks/uploads detail screens to use the new shell and sync
    event selection (resources/js/admin/mobile/EventTasksPage.tsx, EventPhotosPage.tsx).
  - Updated mobile routes and existing screens to the new tab keys and header/footer behavior (resources/js/admin/
    router.tsx, mobile/* pages, i18n nav/header strings).
2025-12-10 16:13:44 +01:00
Codex Agent
9930b272ca first implementation of tamagui mobile pages 2025-12-10 15:49:08 +01:00
Codex Agent
4bdb93c171 gift voucher language fixes + move into user menu 2025-12-08 20:18:01 +01:00
Codex Agent
4784c23e70 Hintergründe zum EventInvitePage Layout Customizer hinzugefügt. Badge und CTA entfernt, Textfelder zu Textareas gemacht. Geschenkgutscheine verbessert, E-Mail-Versand ergänzt + Resend + Confirmationseite mit Code-Copy und Link zur Package-Seite, die den Code als URL-Parameter enthält. 2025-12-08 16:20:04 +01:00
Codex Agent
046e2fe3ec geschenkgutscheine implementiert ("Paket verschenken"). Neuer Upload-Provider: Sparkbooth. 2025-12-07 16:54:58 +01:00
Codex Agent
1d3d49e05a widerrufsbelehrung hinzugefügt und in den checkout mit eingebunden. refund ins backend eingebaut. 2025-12-07 11:57:05 +01:00