Course Registration
Feature Detail
Description
Course Registration enables peer mentors and coordinators to browse available courses and enroll directly through the mobile app. HLF requires formal course registration tied to certification renewal tracking, while Barnekreftforeningen uses the feature for onboarding new peer mentors and follow-up training sessions. Course completions integrate with the certification workflow to trigger status updates and renewal cycles, ensuring the certification pipeline remains consistent across both organizations.
Sources & reasoning
HLF explicitly requires in-app course registration as part of their certification workflow (line 114), and Barnekreftforeningen shares the need for onboarding and follow-up training (line 123). The priority matrix (line 155) marks this SHOULD Phase 3, confirming v1.1 per third-phase normalization. The feature is foundational to certification-training and directly enables the certificate and renewal reminder features.
-
docs/source/likeperson.md · line 114Kursadministrasjon og sertifisering: PÄmelding til kurs i appen, automatisk pÄminnelse ved utlÞp, digitale sertifikater. Det fysiske kortet er et «adelsmerke» og skal leve parallelt.
-
docs/source/likeperson.md · line 123Kursadministrasjon (delt med HLF) for opplÊring av nye likepersoner og oppfÞlgingskurs.
-
docs/source/likeperson.md · line 155Kursadministrasjon / sertifisering | â | - | - | â | â | SHOULD (HLF + Barnekreft) | 3
Analysis
Course registration directly supports HLF's formal certification pipeline, where peer mentors must complete accredited courses to maintain active status and public eligibility. For Barnekreftforeningen, the feature streamlines onboarding of new peer mentors and follow-up training, ensuring a consistently qualified volunteer base. Reducing friction in course sign-up increases participation rates and improves the quality of peer support delivered to contacts. Centralizing enrollment in the app eliminates manual processes and reduces administrative burden on coordinators managing training logistics across multiple associations.
Course data is fetched from the backend REST API and displayed in a paginated list filterable by category and organization using Riverpod state management. Registration state is persisted locally via Drift for offline-first behavior, with background sync confirming enrollment once connectivity is restored. Backend validation prevents duplicate registrations for the same course. For HLF, course completion events trigger certification record updates; for Barnekreftforeningen, completion feeds into peer mentor profile status. Push notifications confirm enrollment and surface session reminders through the existing notification scenarios engine.
Quality Assurance
Peer Mentor (primary) · Coordinator (same flow)Peer Mentor
Quick UAT
- Logg inn i mobilappen som Peer Mentor. Ă pne Innstillinger-menyen og naviger til Kurs.
- Bla gjennom kurslisten og se at kurs er filtrert etter din organisasjon. Velg et tilgjengelig kurs.
- Les kursbeskrivelsen og bekreft at sertifiseringskontekst (f.eks. fornyelseskrav) vises tydelig. Trykk Meld meg pÄ.
- Bekreft pÄmeldingsdialogen ved Ä trykke Bekreft pÄmelding.
- Bekreft at kurset nÄ vises med status PÄmeldt i kurslisten og at en bekreftelsesmelding vises.
Quick UAT â Accessibility
-
Logg inn i mobilappen som Peer Mentor. Ă pne Innstillinger-menyen og naviger til Kurs.
- Screen reader Menyknapp annonseres som 'Innstillinger, knapp'; navigasjonspunktet 'Kurs' annonseres med rolle 'menyvalg'.
- Keyboard / focus Tab-rekkefĂžlge: bunn-navigasjon â hamburger-meny â Kurs-menyvalg.
- Focus visibility Synlig fokusring pÄ hamburger-knapp og alle menyvalg.
- Touch target Hamburger-knapp og menyvalg â„ 24Ă24 CSS px.
-
Bla gjennom kurslisten og se at kurs er filtrert etter din organisasjon. Velg et tilgjengelig kurs.
- Screen reader Hvert kortelement annonseres med kursnavn, kategori og tilgjengelighetsstatus.
- Keyboard / focus Piltaster navigerer listeelementene; Enter Äpner valgt kurs.
- Focus visibility Fokusring synlig pÄ hvert kort ved tastaturnavigasjon.
- Zoom Kurslisten er brukbar ved 200% zoom uten horisontal scrolling.
-
Les kursbeskrivelsen og bekreft at sertifiseringskontekst (f.eks. fornyelseskrav) vises tydelig. Trykk Meld meg pÄ.
- Screen reader Kurstittel annonseres som sideoverskrift (h1); Meld meg pÄ-knapp annonseres med rolle 'knapp' og tilstand.
- Keyboard / focus Tab nÄr Meld meg pÄ-knapp fra kursbeskrivelsesinnhold; Enter aktiverer.
- Focus visibility Synlig fokusring pÄ Meld meg pÄ-knapp.
- Touch target Meld meg pĂ„-knapp â„ 24Ă24 CSS px.
- Contrast Sertifiseringsstatustekst oppfyller 4.5:1 kontrastforhold; status formidles ikke kun via farge.
-
Bekreft pÄmeldingsdialogen ved Ä trykke Bekreft pÄmelding.
- Screen reader Modal-dialog annonseres med tittel og beskrivelse ved Äpning; Bekreft pÄmelding-knapp annonseres.
- Keyboard / focus Fokus fanges i modalen; Tab sykler mellom Avbryt og Bekreft pÄmelding; Escape lukker uten handling.
- Focus visibility Fokus flyttes til modal-tittel ved Äpning; synlig fokusring pÄ begge knapper.
- Touch target Bekreft pĂ„melding- og Avbryt-knapper â„ 24Ă24 CSS px.
-
Bekreft at kurset nÄ vises med status PÄmeldt i kurslisten og at en bekreftelsesmelding vises.
- Screen reader Skjermleser annonserer bekreftelsesmelding umiddelbart etter vellykket registrering.
- Live region 'PÄmelding bekreftet. Du er nÄ registrert pÄ kurset.'
- Contrast PÄmeldt-statusmerket formidler tilstand via tekst og ikon, ikke farge alene.
Role Boundaries
3 role(s) must NOT access this feature-
Organization Administrator
Kursregistrering finnes ikke i admin-portalen; funksjonaliteten er eksklusiv for mobilappen. Deep-link til kurs-skjerm returnerer 403.
-
Global Administrator
Kursregistrering finnes ikke i admin-portalen og Global Admin har ikke tilgang til mobilappen. ForsÞk pÄ deep-link returnerer 403.
-
Prospective Organization Representative
Ingen brukerkonto i operasjonelle produkter; tilgang til kursregistrering er ikke mulig.
Expected End State
Peer Mentor er registrert pÄ kurset med status PÄmeldt i CourseRepository. CourseService har sendt fullfÞringstrigger klar for sertifiseringsarbeidsflyt ved kursgjennomfÞring. PÄmeldingspost vises i brukerens kurshistorikk.
Components (22)
Shared Components
These components are reused across multiple features
User Stories
No user stories have been generated for this feature yet.