The Alumni Details screen atDocumentation Index
Fetch the complete documentation index at: https://docs.encoreos.io/llms.txt
Use this file to discover all available pages before exploring further.
/rh/alumni/:id shows the full record for one alumni, including program completion details, contact consent and contact information, success story status, an engagement breakdown chart, and a complete engagement history table.
Overview
The page reads the URL parameter:id and loads the alumni record via useAlumniDetail. The breadcrumb is set to Alumni #<first 8 chars of id>. The header badge shows Active Alumni (green) when alumni.is_active is true, and Inactive (secondary) otherwise. Program completion date is formatted as MMMM d, yyyy. Contact information (contact_email, contact_phone, contact_address) is rendered only when contact_consent is true. The success story card shows an “Approved” badge when success_story_approved is true, a “Pending Approval” badge with a no-op approve button when a story is present but not yet approved, or a placeholder message when no story exists. The AlumniEngagementChart renders when engagement data is present, aggregating records by engagement_type. A full AlumniEngagementsTable filtered by alumniId shows the complete engagement history. If the record is not found or an error occurs, a “Alumni record not found or an error occurred.” message is displayed.
Who it’s for
No route-levelRequirePermission beyond the outer RHViewGuard, which requires RH_PERMISSIONS.DASHBOARD_VIEW (rh.dashboard.view).
Before you start
- Hold
rh.dashboard.viewto access the RH module. - The alumni record must exist; navigating to a non-existent ID shows an error card.
Steps
Open an alumni record
From
/rh/alumni, click a row in the Alumni directory table to navigate to /rh/alumni/:id.Review alumni information
The Alumni Information card shows Completion Type, Program Completion Date, Episode ID, and Contact Consent. Contact details (email, phone, address) are visible only when
contact_consent is true.Review the success story
The Success Story card shows approval status. An approved story is displayed with a green badge. A pending story shows a “Pending Approval” badge and an Approve Story button (currently a placeholder — see SME note).
View engagement breakdown
If engagement records exist, the
AlumniEngagementChart renders a breakdown by engagement type.Key concepts
Error / not-found state
Error / not-found state
If
useAlumniDetail returns an error or no data, the page renders a card with the message “Alumni record not found or an error occurred.”Loading state
Loading state
While data is fetching, two skeleton placeholders replace the header and detail card.
Contact consent gate
Contact consent gate
Contact email, phone, and address fields are only rendered when
alumni.contact_consent is true. This is enforced in the component JSX — not via a separate permission check.Related
Recovery Housing
Recovery Housing references and overview.
Governance & parity
Documentation coverage and governance.
This page documents shipped product behavior. It is not medical, legal, or
billing advice. Verify against your organization’s policies and applicable
regulations before using it for clinical, compliance, or billing decisions.
Protected health information (PHI) shown in the product is governed by your
tenant’s access controls and is never exposed in this documentation.
Documentation sources
Documentation sources
- src/routes/rh.tsx
- src/cores/rh/pages/AlumniDetailPage.tsx
- src/cores/rh/hooks/useAlumni.ts