Commit Graph

58 Commits

Author SHA1 Message Date
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
5817270c35 Admin Menü neu geordnet.
Introduced a two-tier media pipeline with dynamic disks, asset tracking, admin controls, and alerting around
  upload/archival workflows.
  - Added storage metadata + asset tables and models so every photo/variant knows where it lives
 (database/migrations/2025_10_20_090000_create_media_storage_targets_table.php, database/  migrations/2025_10_20_090200_create_event_media_assets_table.php, app/Models/MediaStorageTarget.php:1, app/
    Models/EventMediaAsset.php:1, app/Models/EventStorageAssignment.php:1, app/Models/Event.php:27).
  - Rewired guest and tenant uploads to pick the event’s hot disk, persist EventMediaAsset records, compute
    checksums, and clean up on delete (app/Http/Controllers/Api/EventPublicController.php:243, app/Http/
Controllers/Api/Tenant/PhotoController.php:25, app/Models/Photo.php:25).
  - Implemented storage services, archival job scaffolding, monitoring config, and queue-failure notifications for upload issues (app/Services/Storage/EventStorageManager.php:16, app/Services/Storage/
    StorageHealthService.php:9, app/Jobs/ArchiveEventMediaAssets.php:16, app/Providers/AppServiceProvider.php:39, app/Notifications/UploadPipelineFailed.php:8, config/storage-monitor.php:1).
  - Seeded default hot/cold targets and exposed super-admin tooling via a Filament resource and capacity widget (database/seeders/MediaStorageTargetSeeder.php:13, database/seeders/DatabaseSeeder.php:17, app/Filament/Resources/MediaStorageTargetResource.php:1, app/Filament/Widgets/StorageCapacityWidget.php:12, app/Providers/Filament/SuperAdminPanelProvider.php:47).
- Dropped cron skeletons and artisan placeholders to schedule storage monitoring, archival dispatch, and upload queue health checks (cron/storage_monitor.sh, cron/archive_dispatcher.sh, cron/upload_queue_health.sh, routes/console.php:9).
2025-10-17 22:26:13 +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
25e8f0511b Guest PWA vollständig lokalisiert 2025-10-17 15:00:07 +02:00
Codex Agent
bd38decc23 better repo organization, added legal texts 2025-10-16 22:01:15 +02:00
Codex Agent
58d9ef34ab fixed errors in event and tenant resources 2025-10-15 21:43:24 +02:00
Codex Agent
1a4bdb1fe1 tenant admin startseite schicker gestaltet und super-admin und tenant admin (filament) aufgesplittet.
Es gibt nun task collections und vordefinierte tasks für alle. Onboarding verfeinert und webseite-carousel gefixt (logging später entfernen!)
2025-10-14 15:17:52 +02:00
Codex Agent
64a5411fb9 - Reworked the tenant admin login page
- Updated the User model to implement Filament’s tenancy contracts
- Seeded a ready-to-use demo tenant (user, tenant, active package, purchase)
- Introduced a branded, translated 403 error page to replace the generic forbidden message for unauthorised admin hits
- Removed the public “Register” links from the marketing header
- hardened join event logic and improved error handling in the guest pwa.
2025-10-13 12:50:46 +02:00
Codex Agent
9394c3171e Added opaque join-token support across backend and frontend: new migration/model/service/endpoints, guest controllers now resolve tokens, and the demo seeder seeds a token. Tenant event details list/manage tokens with copy/revoke actions, and the guest PWA uses tokens end-to-end (routing, storage, uploads, achievements, etc.). Docs TODO updated to reflect completed steps. 2025-10-12 10:32:37 +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
1845d83583 change role to "user" for new registrations, fixed some registration form errors and implemented a reg-test 2025-10-02 15:06:50 +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
1945f664c6 fixed "vite manifest app.js not found" 2025-09-30 22:40:14 +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
Codex Agent
0a643c3e4d feat(packages): implement package-based business model 2025-09-26 22:13:56 +02:00
Codex Agent
6fc36ebaf4 integration vom Blog-plugin, hübschere webseite, 2025-09-26 17:41:17 +02:00
Codex Agent
492b9b9fd1 added marketing page and moved events&general landing page 2025-09-26 15:40:37 +02:00
Codex Agent
6215ebbaa0 feat(tenant-admin): refresh event management experience 2025-09-26 12:17:25 +02:00
215d19f07e Harden credit flows and add RevenueCat webhook 2025-09-25 14:05:58 +02:00
9248d7a3f5 feat: harden tenant settings and import pipeline 2025-09-25 11:51:42 +02:00
b22d91ed32 feat: implement tenant OAuth flow and guest achievements 2025-09-25 08:32:37 +02:00
ef6203c603 fixed tenants and eventpurchaseresource, changed lightbox in gallery 2025-09-18 15:27:33 +02:00
60f5e46ea9 fixed demophotosseeder 2025-09-18 09:05:29 +02:00
0ad4b7d20b Add tenant_id to photos table migration to fix DemoPhotosSeeder error (missing column in Multi-Tenancy setup). Update migration to include foreign key for isolation. 2025-09-17 20:40:54 +02:00
31991b7e63 Add status column to events table via migration and publish demo event in seeder to fix 404 errors for Guest PWA (requires published status). 2025-09-17 20:36:28 +02:00
c8a9224ab0 Fix 401 errors for Guest PWA API endpoints: Remove global tenant middleware from bootstrap/app.php and apply only to tenant routes; add throttle:100,1 to guest routes in api.php; enhance EventPublicController with published status validation for all methods to ensure secure public access without auth. 2025-09-17 20:15:08 +02:00
42d6e98dff Implement multi-tenancy support with OAuth2 authentication for tenant admins, Stripe integration for event purchases and credits ledger, new Filament resources for event purchases, updated API routes and middleware for tenant isolation and token guarding, added factories/seeders/migrations for new models (Tenant, EventPurchase, OAuth entities, etc.), enhanced tests, and documentation updates. Removed outdated DemoAchievementsSeeder. 2025-09-17 19:56:54 +02:00
5fbb9cb240 readme und docs von der tenant app hinzugefügt 2025-09-15 13:27:31 +02:00
216ee063ff fixed like action, better dark mode, bottom navigation working, added taskcollection 2025-09-13 00:43:53 +02:00
fc1e64fea3 feat(profile): add username + preferred_locale; wire to Inertia + middleware
- DB: users.username (unique), users.preferred_locale (default from app.locale)
- Backend: validation, model fillable; share supportedLocales; SetLocaleFromUser
- Frontend: profile page fields + types
- Filament: SuperAdmin profile page with username/language

feat(admin-nav): move Tasks to Bibliothek and add menu labels

fix(tasks-table): show localized title/emotion/event type; add translated headers

feat(l10n): add missing table headers for emotions and event types; normalize en/de files

refactor: tidy translations for tasks/emotions/event types
2025-09-11 21:17:19 +02:00
40aa5fc188 fixed filament resource forms 2025-09-10 19:28:16 +02:00
837155f54c feat: Update web routes for new features 2025-09-09 21:23:35 +02:00
a1036a333b docs: Add Capacitor tenant app integration notes 2025-09-09 21:23:14 +02:00