Commit Graph

58 Commits

Author SHA1 Message Date
Codex Agent
53eb560aa5 Add live show player playback and effects
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (push) Has been cancelled
tests / ui (push) Has been cancelled
2026-01-05 18:31:01 +01:00
Codex Agent
eed7699549 Implement compliance exports and retention overrides
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (push) Has been cancelled
tests / ui (push) Has been cancelled
2026-01-02 20:13:45 +01:00
Codex Agent
aaf418a917 Expliziten Return‑Flow umgesetzt: neue Return‑Route nimmt _ptxn, lädt die Transaktion und leitet anhand custom_data
auf success_url/cancel_url weiter. Gleichzeitig werden diese URLs jetzt in custom_data bei Add‑ons, Package‑Checkout
  und Gift‑Vouchern gespeichert, damit der Return‑Handler sie kennt.

  Details (relevant):
  - app/Http/Controllers/PaddleReturnController.php verarbeitet _ptxn, prüft Status, schützt vor Open‑Redirects.
  - routes/web.php neue Route paddle.return (öffentlich).
  - app/Services/Addons/EventAddonCheckoutService.php, app/Services/Paddle/PaddleCheckoutService.php, app/Services/
GiftVouchers/GiftVoucherCheckoutService.php speichern success_url/cancel_url in custom_data.
  - tests/Feature/PaddleReturnTest.php prüft Success/Cancel‑Redirects.
  - Tests aktualisiert: tests/Unit/PaddleCheckoutServiceTest.php.
  Wichtig für die Rückleitung:

  - Bitte in Paddle (Sandbox + Live) die Checkout‑Success/Cancel URL auf http://fotospiel-app.test/paddle/return
    setzen.
    Ohne diese Einstellung schickt Paddle den Nutzer nicht zu unserem Return‑Handler.
  Nebenwirkung: Add‑on‑Checkout gibt jetzt als checkout_id die Transaktions‑ID (txn_…) zurück (statt chk_…).
2025-12-29 18:20:52 +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
ed5c1918fc csrf handling mit der korrekten middleware verbunden 2025-12-23 09:54:26 +01:00
Codex Agent
826e2a93ce super.admin login bringt nun keinen Fehler 419 mehr 2025-12-23 09:25:59 +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
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
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
928d28fcaf implemented a lot of security measures 2025-12-09 20:29:32 +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
Codex Agent
dd3198cb79 fixed language switching in the frontend 2025-12-02 13:31:58 +01:00
Codex Agent
df414a31cd photobooth funktionen im event admin verlinkt, gäste pwa zeigt photobooth nur noch an, wenn diese aktiviert ist. kontaktformular optimiert. teilen-link mit iMessage und whatsapp erweitert. 2025-11-23 22:22:06 +01:00
Codex Agent
e0127e7f39 legal documents improved, gäste-pwa uploads optimiert: client-side compression/resize. 2025-11-20 22:09:11 +01:00
Codex Agent
8d2075bdd2 nicer package layout, also in checkout step 1, fixed missing registration language strings, registration error handling, email verification redirect, email verification error handling and messaging, 2025-11-19 20:21:54 +01:00
Codex Agent
1cec116933 reworked the guest pwa, modernized start and gallery page. added share link functionality. 2025-11-10 22:25:25 +01:00
Codex Agent
2587b2049d im profil kann ein nutzer nun seine daten exportieren. man kann seinen account löschen. nach 2 jahren werden inaktive accounts gelöscht, 1 monat vorher wird eine email geschickt. Hilfetexte und Legal Pages in der Guest PWA korrigiert und vom layout her optimiert (dark mode). 2025-11-10 19:55:46 +01:00
Codex Agent
776da57ca9 stage 1 of oauth removal, switch to sanctum pat tokens 2025-11-06 20:35:58 +01:00
Codex Agent
b32413b108 completed the frontend dashboard component and bound it to the tenant admin pwa for the optimal onboarding experience.. Added a profile page. 2025-11-04 22:28:37 +01:00
Codex Agent
fe380689fb die tenant admin oauth authentifizierung wurde implementiert und funktioniert jetzt. Zudem wurde das marketing frontend dashboard implementiert. 2025-11-04 16:14:17 +01:00
Codex Agent
55c606bdd4 das marketing frontend wurde auf lokalisierte urls umgestellt. 2025-11-03 15:50:10 +01:00
Codex Agent
20eda6b4f8 login-seiten neu designt, homepage neu designt. "so funktioniert's" ergänzt und Demo-Seite hinzugefügt. Paketansicht in mobile verbessert. 2025-11-03 11:47:19 +01:00
Codex Agent
5432456ffd switched to paddle inline checkout, removed paypal and most of stripe. added product sync between app and paddle. 2025-10-27 17:26:39 +01:00
Codex Agent
ecf5a23b28 fixed event join token handling in the event admin. created new seeders with new tenants and package purchases. added new playwright test scenarios. 2025-10-26 14:44:47 +01:00
Codex Agent
6290a3a448 Fix tenant event form package selector so it no longer renders empty-value options, handles loading/empty
states, and pulls data from the authenticated /api/v1/tenant/packages endpoint.
    (resources/js/admin/pages/EventFormPage.tsx, resources/js/admin/api.ts)
  - Harden tenant-admin auth flow: prevent PKCE state loss, scope out StrictMode double-processing, add SPA
    routes for /event-admin/login and /event-admin/logout, and tighten token/session clearing semantics (resources/js/admin/auth/{context,tokens}.tsx, resources/js/admin/pages/{AuthCallbackPage,LogoutPage}.tsx,
    resources/js/admin/router.tsx, routes/web.php)
2025-10-19 23:00:47 +02:00
Codex Agent
a949c8d3af - Wired the checkout wizard for Google “comfort login”: added Socialite controller + dependency, new Google env
hooks in config/services.php/.env.example, and updated wizard steps/controllers to store session payloads,
attach packages, and surface localized success/error states.
- Retooled payment handling for both Stripe and PayPal, adding richer status management in CheckoutController/
PayPalController, fallback flows in the wizard’s PaymentStep.tsx, and fresh feature tests for intent
creation, webhooks, and the wizard CTA.
- Introduced a consent-aware Matomo analytics stack: new consent context, cookie-banner UI, useAnalytics/
useCtaExperiment hooks, and MatomoTracker component, then instrumented marketing pages (Home, Packages,
Checkout) with localized copy and experiment tracking.
- Polished package presentation across marketing UIs by centralizing formatting in PresentsPackages, surfacing
localized description tables/placeholders, tuning badges/layouts, and syncing guest/marketing translations.
- Expanded docs & reference material (docs/prp/*, TODOs, public gallery overview) and added a Playwright smoke
test for the hero CTA while reconciling outstanding checklist items.
2025-10-19 11:41:03 +02:00
Codex Agent
ae9b9160ac - Added public gallery API with token-expiry enforcement, branding payload, cursor pagination, and per-photo download stream (app/Http/Controllers/Api/EventPublicController.php:1, routes/api.php:16). 410 is returned when the package gallery duration has lapsed.
- Served the guest PWA at /g/{token} and introduced a mobile-friendly gallery page with lazy-loaded thumbnails, themed colors, lightbox, and download links plus new gallery data client (resources/js/guest/pages/PublicGalleryPage.tsx:1, resources/js/guest/services/galleryApi.ts:1, resources/js/guest/router.tsx:1). Added i18n strings for the public gallery experience (resources/js/guest/i18n/messages.ts:1).
- Ensured checkout step changes snap back to the progress bar on mobile via smooth scroll anchoring (resources/ js/pages/marketing/checkout/CheckoutWizard.tsx:1).
- Enabled tenant admins to export all approved event photos through a new download action that streams a ZIP archive, with translations and routing in place (app/Http/Controllers/Tenant/EventPhotoArchiveController.php:1, app/Filament/Resources/EventResource.php:1, routes/web.php:1, resources/lang/de/admin.php:1, resources/lang/en/admin.php:1).
2025-10-17 23:24:06 +02:00
Codex Agent
48a2974152 Marketing packages now use localized name/description data plus seeded placeholder-
driven breakdown tables, with frontend/cards/dialog updated accordingly (database/
  migrations/2025_10_17_000001_add_description_table_to_packages.php, database/
  migrations/2025_10_17_000002_add_translation_columns_to_packages.php, database/seeders/PackageSeeder.php, app/
  Http/Controllers/MarketingController.php, resources/js/pages/marketing/Packages.tsx).
  Filament Package resource gains locale tabs, markdown editor, numeric/toggle inputs, and simplified feature
  management (app/Filament/Resources/PackageResource.php, app/Filament/Resources/PackageResource/Pages/
  CreatePackage.php, .../EditPackage.php).
  Legal pages now render markdown-backed content inside the main layout via a new controller/view route setup and
  updated footer links (app/Http/Controllers/LegalPageController.php, routes/web.php, resources/views/partials/
  footer.blade.php, resources/js/pages/legal/Show.tsx, remove old static pages).
  Translation files and shared assets updated to cover new marketing/legal strings and styling tweaks (public/
  lang/*/marketing.json, resources/lang/*/marketing.php, resources/css/app.css, resources/js/admin/components/
  LanguageSwitcher.tsx).
2025-10-17 21:20:54 +02:00
Codex Agent
d04e234ca0 - Tenant-Admin-PWA: Neues /event-admin/welcome Onboarding mit WelcomeHero, Packages-, Order-Summary- und Event-Setup-Pages, Zustandsspeicher, Routing-Guard und Dashboard-CTA für Erstnutzer; Filament-/admin-Login via Custom-View behoben.
- Brand/Theming: Marketing-Farb- und Typographievariablen in `resources/css/app.css` eingeführt, AdminLayout, Dashboardkarten und Onboarding-Komponenten entsprechend angepasst; Dokumentation (`docs/todo/tenant-admin-onboarding-fusion.md`, `docs/changes/...`) aktualisiert.
- Checkout & Payments: Checkout-, PayPal-Controller und Tests für integrierte Stripe/PayPal-Flows sowie Paket-Billing-Abläufe überarbeitet; neue PayPal SDK-Factory und Admin-API-Helper (`resources/js/admin/api.ts`) schaffen Grundlage für Billing/Members/Tasks-Seiten.
- DX & Tests: Neue Playwright/E2E-Struktur (docs/testing/e2e.md, `tests/e2e/tenant-onboarding-flow.test.ts`, Utilities), E2E-Tenant-Seeder und zusätzliche Übersetzungen/Factories zur Unterstützung der neuen Flows.
- Marketing-Kommunikation: Automatische Kontakt-Bestätigungsmail (`ContactConfirmation` + Blade-Template) implementiert; Guest-PWA unter `/event` erreichbar.
- Nebensitzung: Blogsystem gefixt und umfassenden BlogPostSeeder für Beispielinhalte angelegt.
2025-10-10 21:31:55 +02:00
Codex Agent
52197f216d Route tenant admin PWA via /event-admin 2025-10-10 15:20:52 +02:00
Codex Agent
417b1da484 feat: Implementierung des Checkout-Logins mit E-Mail/Username-Support 2025-10-08 21:57:46 +02:00
Codex Agent
cee279cbab struktur der webseiten-js angepasst. filament aktualisiert. 2025-10-08 19:02:00 +02:00
Codex Agent
b3e6b6b597 vor marketing zu website umbenennung. stripe ist lauffähig 2025-10-08 11:20:00 +02:00
Codex Agent
aa8c6c67c5 feat: Complete checkout overhaul with Stripe PaymentIntent integration and abandoned cart recovery 2025-10-07 22:25:03 +02:00
Codex Agent
dd5545605c Seite läuft wieder, menü bringt keine fehler mehr 2025-10-07 11:52:03 +02:00
Codex Agent
5ee510b05d nicht nutzbarer stand, header menü ist nicht intertia initialisiert. aber schick. codex änderungen noch enthalten. 2025-10-06 13:46:29 +02:00
Codex Agent
d70faf7a9d codex has reworked checkout, but frontend doesnt work 2025-10-05 20:39:30 +02:00
Codex Agent
fdaa2bec62 feat: integrate login/registration into PurchaseWizard 2025-10-04 21:38:03 +02:00
Codex Agent
3c0bbb688b funktionierender stand, purchasewizard noch nicht optimiert. 2025-10-04 16:49:21 +02:00
Codex Agent
bc6a75961a verpfuschter stand von codex 2025-10-04 16:38:42 +02:00
Codex Agent
c87cfb2c10 mehr übersetzungen, added pending purchase indicator. datenschutzfenster funktioniert. 2025-10-03 15:31:54 +02:00
Codex Agent
60f8de9162 feat(i18n): Complete localization of marketing frontend with react-i18next, prefixed URLs, JSON migrations, and automation 2025-10-03 13:05:13 +02:00
Codex Agent
7475210893 Fix auth form errors and redirects: Add React keys/useEffects for error rendering and scroll, Inertia::location in controllers for SPA navigation, extend RegistrationTest and add E2E. Update docs (changes/2025-10-02-registration-fixes.md, prp/13-backend-authentication.md). Add new UI components (accordion, carousel, progress, table, tabs), marketing/legal pages (Blog, Kontakt, Datenschutz, etc.), fonts, user migration (remove_name), views/css/package updates, seeders/factories. 2025-10-02 11:40:48 +02:00
Codex Agent
d1733686a6 massive improvements to tests, streamlined and synced migrations, fixed a lot of wrong or old table field references. implemented a lot of pages in react for website frontend 2025-09-30 21:09:52 +02:00
Codex Agent
21c9391e2c webseite funktioniert, pay sdk, blog backend funktioniert 2025-09-29 22:16:12 +02:00
Codex Agent
e52a4005aa übergang auf pakete, integration von stripe und paypal, blog hinzugefügt. 2025-09-29 07:59:39 +02:00