Contextual Explanation of Why Access Is Denied
The no-access screen widget must render dynamic content sourced from the no-access config repository, which stores per-route denial reasons and optional support contact details. For example, attempting to access the coordinator review queue should show 'This section is only available to coordinators. Contact your coordinator if you believe this is an error.' The content must be written in plain language, meeting the cognitive accessibility principle established by the organization requirements (particularly important for NHF users including those with acquired brain injuries). The access denial service is responsible for resolving the correct denial context based on the blocked route.
User Story
Acceptance Criteria
- Given a peer mentor is redirected to the no-access screen from a coordinator-only route, when the screen renders, then a route-specific denial message is displayed rather than a generic fallback
- Given the no-access config repository contains a support contact URL for the blocked feature, when the no-access screen renders, then a clearly labelled 'Contact Support' or 'Contact Coordinator' button is visible
- Given the denial message is displayed, when it is evaluated against cognitive accessibility criteria, then it uses short sentences, avoids technical jargon, and follows the plain-language content service guidelines
- Given the no-access config repository does not contain a specific message for a route, when the screen renders, then a sensible generic fallback message is displayed without a blank or broken UI
- Given the app is configured for a specific organization, when the denial message is rendered, then any role names mentioned use the organization's custom terminology rather than hardcoded strings
Business Value
Organizations such as NHF serve users with cognitive impairments, including stroke survivors, who require plain-language, context-specific feedback to act on app messages. Generic 'Access Denied' error screens increase confusion and support burden. Contextual denial messages reduce friction, empower users to self-serve, and build the confidence needed for successful adoption across volunteer organizations with mixed digital literacy.
Components
- No-Access Screen ui
- Access Denial Service service
- No-Access Configuration Repository data
- URL Launcher Utility infrastructure
- Organization Labels Provider infrastructure
- Plain Language Content Service service
- Plain Language Error Display ui