e70904741d
feat(app): dedicated Tijdsloten tab with grouped view and fill rates
...
Extract time slots from Secties & Shifts into a dedicated Tijdsloten tab.
New tab groups time slots by date with Dutch date headers, person type
filter pills, fill rate progress bars, and sections count. Includes
duplicate, edit, and delete actions with confirmation dialog.
- Create types/timeSlot.ts with enriched TimeSlot interface
- Add Tijdsloten tab to EventTabsNav between Publiekslijsten and Secties
- Create time-slots page with loading, error, and empty states
- Remove time slots panel from SectionsShiftsPanel
- Update CreateShiftDialog to navigate to time slots tab
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 15:47:36 +02:00
ee1ee6f41d
feat(app): enhanced crowd list detail panel with person management
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 15:04:36 +02:00
e14cfe8ae2
fix: remove non-existent GET persons endpoint from crowd list detail panel
...
The backend only has POST (add) and DELETE (remove) for crowd list
persons — no GET to list them. Reworked the detail panel to show
person count from the crowd list data instead of fetching individual
persons.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 14:19:40 +02:00
331f662c67
feat: crowd lists frontend with list view, create/edit dialog and person management
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 14:14:17 +02:00
9b7aa92e84
fix: remove resetForm from onSuccess to prevent validation flash in dialogs
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 14:03:02 +02:00
0a7e85b46c
chore: add Mock Service Worker public asset
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 11:16:52 +02:00
03ca1a50a7
feat: local sections in sub-events can use festival-level time slots
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 11:16:32 +02:00
37fecf7181
fix: auth race condition on refresh, section edit dialog, time slot duplicate, autocomplete disable
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 11:16:22 +02:00
4388811be9
feat: companies CRUD with person dialog integration and navigation
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 11:16:01 +02:00
169a078a92
feat: crowd types management UI with create/edit/deactivate
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 11:15:51 +02:00
10bd55b8ae
feat: festival/series model with sub-events, cross-event sections, tab navigation, SectionsShiftsPanel extraction
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 11:15:19 +02:00
11b9f1d399
feat(app): polish event type selector and branding mark
...
Refine the event type segmented control styling and avoid duplicate "Crewli" text in the sidebar header.
Made-with: Cursor
2026-04-08 10:13:54 +02:00
c776331cf8
feat: festival/event model frontend + topbar activeren
...
- Events lijst: card grid met festival/serie chips
- Festival detail: programmaonderdelen grid
- CreateSubEventDialog voor sub-events binnen festival
- EventTabsNav: breadcrumb terug naar festival
- Sessie A: festival-bewuste EventResource + children endpoint
- Topbar: zoekbalk, theme switcher, shortcuts, notificaties
- Schema v1.7 + BACKLOG.md toegevoegd
- 121 tests groen
2026-04-08 10:06:47 +02:00
6848bc2c49
feat: schema v1.7 + sections/shifts frontend
...
- Universeel festival/event model (parent_event_id, event_type)
- event_person_activations pivot tabel
- Event model: parent/children relaties + helper scopes
- DevSeeder: festival structuur met sub-events
- Sections & Shifts frontend (twee-kolom layout)
- BACKLOG.md aangemaakt met 22 gedocumenteerde wensen
2026-04-08 07:23:56 +02:00
6f69b30fb6
feat: frontend fase 2 sessies 1-3
...
- Member management pagina + invite flow
- Persons module met filters, KPI tiles, detail panel
- Event horizontale tabs navigatie (EventTabsNav component)
- Route conflict opgelost
- OrganisationSwitcher verbeterd (collapsed staat WIP)
2026-04-08 03:15:45 +02:00
230e11cc8d
feat: frontend member management
...
- Leden pagina met VDataTable, rol chips, uitnodigingen sectie
- InviteMemberDialog + EditMemberRoleDialog
- Publieke acceptatiepagina /invitations/[token]
- Router guard uitgebreid met requiresAuth: false support
- MemberCollection backend uitgebreid met volledige pending_invitations lijst
2026-04-08 01:50:38 +02:00
9acb27af3a
feat: fase 2 backend — crowd types, persons, sections, shifts, invite flow
...
- Crowd Types + Persons CRUD (73 tests)
- Festival Sections + Time Slots + Shifts CRUD met assign/claim flow (84 tests)
- Invite Flow + Member Management met InvitationService (109 tests)
- Schema v1.6 migraties volledig uitgevoerd
- DevSeeder bijgewerkt met crowd types voor testorganisatie
2026-04-08 01:34:46 +02:00
c417a6647a
feat(app): auth, orgs/events UI, router guards, and dev tooling
...
- Add Sanctum auth flow (store, composables, login, axios interceptors)
- Add dashboard, organisation list/detail, events CRUD dialogs
- Wire router guards, navigation, organisation switcher in layout
- Replace Vuexy @db types in NavSearchBar; add @iconify/types; themeConfig title typing
- Vuetify settings.scss + resolve configFile via fileURLToPath; drop dead path aliases
- Root index redirects to dashboard; fix events table route name
- API: DevSeeder + DatabaseSeeder updates; docs TEST_SCENARIO; corporate identity assets
Made-with: Cursor
2026-04-07 21:51:10 +02:00
0d24506c89
feat: consolidate frontend API layer, add query-client, and harden backend Fase 1
...
Frontend:
- Consolidate duplicate API layers into single src/lib/axios.ts per app
- Remove src/lib/api-client.ts and src/utils/api.ts (admin)
- Add src/lib/query-client.ts with TanStack Query config per app
- Update all imports and auto-import config
Backend:
- Fix organisations.billing_status default to 'trial'
- Fix user_invitations.invited_by_user_id to nullOnDelete
- Add MeResource with separated app_roles and pivot-based org roles
- Add cross-org check to EventPolicy view() and update()
- Restrict EventPolicy create/update to org_admin/event_manager (not org_member)
- Attach creator as org_admin on organisation store
- Add query scopes to Event and UserInvitation models
- Improve factories with Dutch test data
- Expand test suite from 29 to 41 tests (90 assertions)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-07 17:35:34 +02:00
fda161ee09
chore: align migrations, docs, and frontends with crewli.app setup
...
- Replace dated migrations with ordered 2026_04_07_* chain; fold users update into base migration
- Update OrganisationScope, AppServiceProvider, seeders, api routes, and .env.example
- Refresh Cursor rules, CLAUDE.md, Makefile, README, and docs (API, SCHEMA, SETUP)
- Adjust admin/app/portal HTML, packages, api-client, events types, and theme config
- Update docker-compose and VS Code settings; remove stray Office lock files from resources
Made-with: Cursor
2026-04-07 10:45:34 +02:00
5e2ede14b4
fix(admin): index redirect uses auth cookies and Spatie roles
...
- Gate redirect on userData + accessToken; map org roles to events route
- Keep legacy admin/client role redirects for compatibility
- Rename organizer app HTML title to Event Crew - App
- Add Cursor database rules (ULID, JSON, indexes, soft deletes)
Made-with: Cursor
2026-03-30 10:32:42 +02:00
4cda1c0a92
docs: expand EventCrew README with stack and structure
...
Sync auto-imports and typed-router generated declarations from Vue tooling.
Made-with: Cursor
2026-03-29 23:27:11 +02:00
1cb7674d52
refactor: align codebase with EventCrew domain and trim legacy band stack
...
- Update API: events, users, policies, routes, resources, migrations
- Remove deprecated models/resources (customers, setlists, invitations, etc.)
- Refresh admin app and docs; remove apps/band
Made-with: Cursor
2026-03-29 23:19:06 +02:00