docs(forms): SCHEMA crosswalk, foundation concept page, getting-started + migration playbook, copy catalogue init

SCHEMA.md
- New §3.5.12 "Form Builder" with the legacy-tables-retained note
  placed prominently directly under the section header (per S1 wrap-up
  Path 3 decision: Phase 8 deferred to S2).
- Crosswalk: every legacy volunteer_profiles column → its new home
  (user_profiles columns vs form_fields vs person_tags).
- Summary table for the 13 new tables with one-line purpose + ARCH §
  pointer each.
- Activity log strategy and multi-tenancy discipline noted.
- §3.5.4 marked SUPERSEDED with a pointer to the new section.

/dev-docs/form-builder-migration-playbook.md (new)
- Operator runbook for forms:migrate-legacy-data on real legacy data.
- Pre-flight audit, dry-run, migrate, verify, spot-check, rollback
  paths spelled out. Same legacy-tables-retained note prominently.

/dev-docs/form-builder-getting-started.md (new)
- Developer onboarding. Mental model, code samples for creating a
  schema/field/submission/value, adding a new subject type, registering
  a custom field type, suppressing activity log via
  App\Support\ActivityLog::suppressed.

/dev-docs/COPY_CATALOGUE.md (new)
- Seeded verbatim from ARCH §30 (naming conventions, tooltip catalogue,
  warning catalogue) with a header explaining purpose, growth strategy,
  and the per-PR update workflow.

/docs/organizer/forms/concepts/wat-is-een-formulier.md (new VitePress)
- Dutch, informal je/jij. Follows /docs/.templates/concept-page.md.
- Three example use-cases: vrijwilligersregistratie, artist advance,
  incidentrapportage. Light foundation; depth arrives in S2-S5.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-17 17:06:53 +02:00
parent cd7a804024
commit cfc7610497
5 changed files with 676 additions and 0 deletions

View File

@@ -0,0 +1,77 @@
---
title: Wat is een formulier
description: Uitleg van het formulierensysteem in Crewli — één bouwsteen voor registratie, advancing, incidenten en meer.
tags: [formulieren, introductie, organisator]
---
# {{ $frontmatter.title }}
{{ $frontmatter.description }}
## In het kort
Een **formulier** in Crewli is een verzameling velden die je kunt
samenstellen voor één specifiek doel — bijvoorbeeld een
vrijwilligersregistratie, een artist advance, of een incidentrapportage.
Iedere ingevulde versie van een formulier heet een **inzending**, en die
inzending hangt aan een onderwerp: een persoon, een artiest, een
bedrijf, een evenement, of niemand (bij een publiek formulier).
Eén systeem, veel doelen. Of je nu wilt dat vrijwilligers zich aanmelden
voor je festival of dat je crew incidenten kan rapporteren tijdens een
shift — je gebruikt steeds dezelfde formulierbouwer.
## Hoe past dit in Crewli?
Vroeger had Crewli alleen registratieformulieren per evenement. Het
nieuwe formulierensysteem doet hetzelfde, maar voor élk soort
gegevensverzameling. Je vindt formulieren terug op:
- De **registratiepagina** van een evenement (vrijwilligers melden zich aan).
- De **artist portal** (artiesten leveren hun rider en advancing aan).
- Het **incidentdashboard** (crew rapporteert wat er is gebeurd).
- De **profielpagina** van vrijwilligers (bio, noodcontact, voorkeuren).
- **Publieke webpagina's** (perskaart-aanvragen, klachten, RSVP's).
Per formulier bepaal je wie het mag invullen, of het meerdere keren of
één keer ingevuld kan worden, of het bevroren wordt na inzending, en
hoe lang de gegevens bewaard blijven.
## Voorbeeld
### 1. Vrijwilligersregistratie
Je organiseert *Echt Feesten 2026*. Je maakt een formulier met velden
zoals shirtmaat, dieetwensen, noodcontact en motivatie. Je publiceert
het formulier; vrijwilligers vullen het in via de aanmeldlink. Iedere
ingediende registratie verschijnt in je personenoverzicht, klaar om
shifts toe te wijzen.
### 2. Artist advance
Een artiest komt over twee weken optreden. Je stuurt ze de
advance-link. Ze openen het formulier en vullen per sectie hun
gegevens in: contactpersoon, technische rider, hospitality-wensen,
transport. Jij ziet per sectie of de artiest klaar is en kunt per
sectie goedkeuren of feedback vragen.
### 3. Incidentrapportage
Tijdens het festival valt iemand van de bar. Een crewlid pakt z'n
telefoon, opent het incidentformulier, vult het tijdstip, de locatie,
de ernst en wat er is gedaan in. Direct na inzending wordt het
formulier bevroren — niemand kan de inhoud nog wijzigen, wat belangrijk
is voor verzekering en juridische opvolging.
## Gerelateerde concepten
In de volgende sessies komen er meer pagina's bij over:
- Velden toevoegen en sorteren
- Formulieren publiceren en de publieke link
- Inzendingen beoordelen en exporteren
- Sjablonen hergebruiken tussen evenementen
Voor nu: maak een evenement aan en bekijk het meegeleverde
registratieformulier — dat is een goede startplek om het systeem te
verkennen.