low complexity extracted Event Management Confidence: 100%
7
Components
2
Shared
0
User Stories
Yes
Analyzed

Description

This feature provides a browsable, filterable list of upcoming and past events scoped to the user's organization and role. Peer mentors see events they can sign up for or have already joined; coordinators see events they manage plus all events in their local association. The list supports basic search, date filtering, and status (upcoming, ongoing, past), and works offline against the locally cached event store so volunteers in low-connectivity field conditions can still see what is coming up. Tapping an entry opens an event detail view used by the sign-up flow.

Sources & reasoning

Event Listing is enumerated as one of three features under the event-management area in the canonical area taxonomy (section 8). MVP target because event-management is part of the mobile-app core needed for the operational flow, and listing is the prerequisite for sign-up which is itself MVP.

  • event-management | Event Management | Event Creation, Event Listing, Event Sign-up
  • Bottom nav with 5 tabs: Home, Contacts, Add (modal launcher for Activity and Event wizards), Work, Notifications
  • Offline-first persistence (Drift + SQLCipher encrypted local DB, mutation outbox, sync queue with retry/backoff, ID mapping for offline-created entities, conflict resolver)

Analysis

Business Value

Without a list view, events created in the wizard would be invisible to the volunteers who need to attend them. A reliable listing turns events from coordinator artifacts into discoverable opportunities for peer mentors, which is essential to drive attendance, capture sign-ups, and ultimately produce the structured data that flows into Bufdir reporting. The offline-first behavior matters specifically for the volunteer-in-the-field context the platform is built for: a peer mentor on the way to a meeting must be able to confirm where and when it is without depending on connectivity, which reduces the no-show and misroute problems that today bleed organizational time.

Implementation Notes

Implemented as a Flutter list screen backed by the Event Query Service, with Drift-cached results for offline use and paginated REST fetches when online. Query scope is determined server-side by the user's organization and role, so the client does not need to know tenant boundaries. Role-specific filtering (mentor-visible vs coordinator-visible) is a backend concern; the client renders whatever the API returns. The list reuses the standard card pattern from the contact list, with date and location as compact metadata. Pagination uses cursor-based loading to behave well with the optimistic mutation pattern when new events are created locally.

Quality Assurance

Peer Mentor (primary browser) · Coordinator (oversight + multi-org filter)
2
Scenarios
9
UAT Steps
20
A11y Annotations
3
Role Boundaries
Peer Mentor (Likeperson)

Peer Mentor (Likeperson)

Quick UAT

  1. Logg inn i Meander-mobilappen som Likeperson og Äpne fanen Arrangementer.
  2. Bekreft at listen kun viser arrangementer fra din egen organisasjon og at fremtidige arrangementer ligger Ăžverst sortert etter dato.
  3. Trykk pÄ filter-ikonet og velg datointervall 'Neste 30 dager' og sted 'Oslo'.
  4. Bekreft at listen oppdateres slik at kun arrangementer i Oslo de neste 30 dagene vises, og at tom-tilstand vises hvis ingen treff.
  5. Trykk pÄ et arrangement i listen for Ä gÄ videre til PÄmelding.

Quick UAT — Accessibility

  1. Logg inn i Meander-mobilappen som Likeperson og Äpne fanen Arrangementer.
    • Screen reader Skjermleser annonserer 'Arrangementer, fane, valgt' nĂ„r fanen aktiveres.
    • Keyboard / focus Bunnavigasjon nĂ„s med Tab; piltaster bytter mellom faner.
    • Focus visibility Synlig fokusring pĂ„ aktiv fane med kontrast ≄ 3:1.
  2. Bekreft at listen kun viser arrangementer fra din egen organisasjon og at fremtidige arrangementer ligger Ăžverst sortert etter dato.
    • Screen reader Liste annonseres med antall elementer og 'arrangement, 1 av N' per rad.
    • Zoom Liste forblir lesbar og scrollbar ved 200 % zoom uten horisontal scroll.
  3. Trykk pÄ filter-ikonet og velg datointervall 'Neste 30 dager' og sted 'Oslo'.
    • Keyboard / focus Alle filtervalg er tilgjengelige via Tab og aktiveres med mellomrom/Enter.
    • Focus visibility Filter-modal fanger fokus; Esc lukker og returnerer fokus til filter-ikonet.
    • Touch target Filter-ikon og valgknapper er minst 24×24 CSS-piksler.
  4. Bekreft at listen oppdateres slik at kun arrangementer i Oslo de neste 30 dagene vises, og at tom-tilstand vises hvis ingen treff.
    • Live region 'Listen oppdatert. N arrangementer funnet.' annonseres hĂžflig etter filtrering.
    • Contrast Tom-tilstand bruker tekst og ikon - status formidles ikke kun av farge.
  5. Trykk pÄ et arrangement i listen for Ä gÄ videre til PÄmelding.
    • Screen reader Rad annonseres som lenke med tittel, dato og sted fĂžr aktivering.
    • Touch target Hele rad-elementet er trykkbart og minst 24×24 CSS-piksler.
Coordinator (Koordinator)

Coordinator (Koordinator)

Quick UAT

  1. Logg inn som Koordinator og Äpne fanen Arrangementer.
  2. Åpne filteret og velg 'Inkluder under-/overordnede organisasjoner' i hierarki-filteret.
  3. Bekreft at listen nÄ viser arrangementer fra bÄde eget lokallag og tilknyttede ledd, og at hver rad merker hvilken organisasjon arrangementet tilhÞrer.
  4. Filtrer pÄ datointervall 'Denne mÄneden' og bekreft at antall treff stemmer med Aktivitetsfeeden.

Quick UAT — Accessibility

  1. Logg inn som Koordinator og Äpne fanen Arrangementer.
    • Screen reader Skjermleser annonserer 'Arrangementer, fane, valgt, koordinatorvisning'.
    • Focus visibility Synlig fokusring pĂ„ fanen med kontrast ≄ 3:1.
  2. Åpne filteret og velg 'Inkluder under-/overordnede organisasjoner' i hierarki-filteret.
    • Keyboard / focus Avkrysningsboks nĂ„s med Tab og toggles med mellomrom.
    • Touch target Avkrysningsboks og etikett er minst 24×24 CSS-piksler.
  3. Bekreft at listen nÄ viser arrangementer fra bÄde eget lokallag og tilknyttede ledd, og at hver rad merker hvilken organisasjon arrangementet tilhÞrer.
    • Screen reader Rad annonseres med tittel, dato, sted og organisasjonsnavn.
    • Contrast Organisasjons-merkelapp har 4.5:1 kontrast og skiller ikke kun med farge - bruker ogsĂ„ tekst.
  4. Filtrer pÄ datointervall 'Denne mÄneden' og bekreft at antall treff stemmer med Aktivitetsfeeden.
    • Live region 'Listen oppdatert. N arrangementer funnet.' annonseres hĂžflig.
    • Zoom Listen og filter-chip forblir brukbare ved 200 % zoom.

Role Boundaries

3 role(s) must NOT access this feature
  • Organization Administrator

    Org Admin har ikke egen mobilrolle; surfas som Coordinator pÄ mobil og ser samme arrangementsliste. I Admin Web Portal finnes ingen Event Listing-skjerm - deep-link til mobil event-list-URL fra desktop returnerer ikke en admin-side.

  • Global Administrator

    Global Admin har ikke tilgang til mobilappen og kan ikke Äpne arrangementslisten. ForsÞk pÄ deep-link returnerer 403 / no-access-skjerm.

  • Prospective Buyer

    Salgsnettstedet eksponerer ingen arrangementsdata; ingen rute til event-listing eksisterer og deep-link til mobil-URL gir ingen respons fra salgssiden.

Expected End State

Bruker ser en tenant-scoped, filtrert liste over relevante arrangementer sortert kronologisk, og kan Äpne et arrangement for Ä starte pÄmeldingsflyten. Arrangementer fra andre tenants er aldri synlige, og deaktiverte moduler skjuler ikke selve Event Listing siden event-management er et eget togglet omrÄde.

User Stories

No user stories have been generated for this feature yet.