medium complexity extracted Event Management Confidence: 100%
3
Components
18
Shared
0
User Stories
Yes
Analyzed

Description

Event Creation provides peer mentors and coordinators with a guided multi-step wizard for scheduling group activities, meetings, workshops, and other organizational events. The wizard collects title, date, time, duration, location, and a summary description before persisting the event record. It is accessible from the Add tab in the bottom navigation bar, keeping the entry point consistent with activity registration. The feature is built to WCAG 2.2 AA standards, including keyboard navigation and screen-reader labels on every interactive element.

Sources & reasoning

Line 297 defines the exact wizard structure for event creation and line 289 places it as a primary entry point in bottom-nav. The blueprint marks this MVP. The mobile architecture section treats event wizards as a core screen alongside activity wizards, confirming launch-critical status.

  • Event wizard (multi-step: title → date → time → duration → location → summary)
  • Bottom nav with 5 tabs: Home, Contacts, Add (modal launcher for Activity and Event wizards), Work, Notifications

Analysis

Business Value

Events are a core coordination mechanism across all four partner organizations. Coordinators schedule group sessions - workshops, training days, local association meetings - that peer mentors must be able to discover and join. Without event creation, the platform cannot support the collective side of peer-mentor work, which is distinct from individual activity logging. Providing a structured multi-step wizard minimizes data-entry errors and ensures that every event record contains the fields required for Bufdir reporting and internal analytics. The feature also reduces coordinator overhead by replacing ad-hoc email or phone coordination with a single tracked record inside the platform.

Implementation Notes

Implemented as a Flutter multi-step wizard using Riverpod state management for draft persistence across steps, mirroring the activity-registration wizard architecture. Each step is a separate widget with its own validation; a shared WizardStepController service orchestrates navigation and draft state. The EventService posts to POST /api/v1/events; the EventRepository caches the created record in the Drift local database for offline resilience via the mutation outbox. All form inputs must meet WCAG 2.2 AA touch-target minimums (24Ă—24px) and provide visible focus indicators. The wizard entry point is the Add tab modal launcher described in the mobile architecture section.

Quality Assurance

Coordinator (primary) · Peer Mentor (same flow)
1
Scenarios
7
UAT Steps
21
A11y Annotations
2
Role Boundaries
Coordinator

Coordinator

Quick UAT

  1. Logg inn i appen som Koordinator. Trykk pĂĄ Legg til-fanen (pluss-ikon) i bunnmenyen.
  2. Velg Arrangement fra handlingslisten. Bekreft at veiviseren for arrangementoppretting ĂĄpnes.
  3. Skriv inn tittel pĂĄ arrangementet og gĂĄ videre til neste steg.
  4. Velg dato og klokkeslett for arrangementet og bekreft valget.
  5. Angi varighet og legg inn stedsangivelse for arrangementet.
  6. Skriv inn en kort sammendragsbeskrivelse og trykk Opprett arrangement.
  7. Bekreft at arrangementet vises i arrangementslisten med korrekt tittel, dato og sted.

Quick UAT — Accessibility

  1. Logg inn i appen som Koordinator. Trykk pĂĄ Legg til-fanen (pluss-ikon) i bunnmenyen.
    • Screen reader Bunnmeny annonseres med rollenavn og antall faner; Legg til-fanen leses som 'Legg til, knapp'.
    • Keyboard / focus Tab-rekkefølge: toppoverskrift → bunnmeny-faner i rekkefølge; Enter aktiverer valgt fane.
    • Touch target Bunnmeny-knapper er minimum 48Ă—48 CSS-piksler.
  2. Velg Arrangement fra handlingslisten. Bekreft at veiviseren for arrangementoppretting ĂĄpnes.
    • Screen reader Handlingsliste annonseres som 'Velg handlingstype'; hvert alternativ leses med navn og rolle.
    • Keyboard / focus Piltaster navigerer mellom alternativer; Enter bekrefter valg.
    • Focus visibility Synlig fokusring pĂĄ aktivt listeelement; modal-dialog har korrekt aria-modal og aria-labelledby.
  3. Skriv inn tittel pĂĄ arrangementet og gĂĄ videre til neste steg.
    • Screen reader Tekstfelt annonseres som 'Tittel, obligatorisk felt, tekstinndata'.
    • Focus visibility Fokus flyttes automatisk til tittelfelt ved ĂĄpning av steget; Neste-knapp er merket og aktiverbar.
    • Contrast Plassholdertekst 4.5:1 mot bakgrunn; feilmelding kommuniseres ikke utelukkende med rød farge.
  4. Velg dato og klokkeslett for arrangementet og bekreft valget.
    • Screen reader Datovelger annonseres med gjeldende verdi og navigasjonsinstruksjoner; klokkeslett leses som 'time, minutt'.
    • Keyboard / focus Piltaster endrer dag/mĂĄned/ĂĄr og time/minutt; Escape lukker datovelger uten ĂĄ endre verdi.
    • Zoom Datovelger og klokkeslett-velger forblir fullt brukbare ved 200 % zoom uten horisontal scrolling.
  5. Angi varighet og legg inn stedsangivelse for arrangementet.
    • Screen reader Varighetsfelt leses som 'Varighet i minutter, obligatorisk'; stedsfeltet leses som 'Sted, tekstinndata'.
    • Focus visibility Fokusrekkefølge er varighet → sted → Neste; ingen fokusfelle i trinnet.
    • Touch target Pluss/minus-knapper for varighet er minimum 24Ă—24 CSS-piksler.
  6. Skriv inn en kort sammendragsbeskrivelse og trykk Opprett arrangement.
    • Screen reader TekstomrĂĄde annonseres som 'Beskrivelse, valgfritt felt'; Opprett arrangement-knappen leses med fullt navn.
    • Keyboard / focus Tab fra tekstomrĂĄde til Opprett arrangement-knapp; Enter aktiverer innsending.
    • Focus visibility Opprett arrangement-knapp har synlig fokusring og er ikke deaktivert ved gyldig skjema.
  7. Bekreft at arrangementet vises i arrangementslisten med korrekt tittel, dato og sted.
    • Screen reader Suksessmelding leses av skjermleser umiddelbart etter innsending.
    • Live region 'Arrangement opprettet. Vises nĂĄ i arrangementslisten.'
    • Contrast Suksessindikator formidler ikke status utelukkende via grønn farge; tekstetikett inkludert.

Role Boundaries

2 role(s) must NOT access this feature
  • Global Administrator

    Appen viser ingen tilgang for Global Administrator; innlogging omdirigerer til Admin Web Portal. Arrangementveiviseren er ikke tilgjengelig.

  • Prospective Organization Representative

    Ingen brukerkonto i mobilappen; innlogging er ikke mulig. Funksjon utilgjengelig.

Expected End State

Arrangementet er lagret i databasen og vises i arrangementslisten med korrekt tittel, dato, klokkeslett, varighet, sted og beskrivelse.

User Stories

No user stories have been generated for this feature yet.