diff --git a/apps/portal/src/app/features/certificates/pages/CertificatesPage.tsx b/apps/portal/src/app/features/certificates/pages/CertificatesPage.tsx index 93814873e..360f5ef2d 100644 --- a/apps/portal/src/app/features/certificates/pages/CertificatesPage.tsx +++ b/apps/portal/src/app/features/certificates/pages/CertificatesPage.tsx @@ -114,7 +114,7 @@ const STATUS_COLOR: Record = { * keys because this page states its statuses the same way. */ const EXAM_STAGE_LABELS: Record = { - ELIGIBLE_TO_REGISTER: 'Eligible — Register for a Sitting', + EXAM_PAID: 'Exam Paid', REGISTERED: 'Exam Scheduled', ATTENDANCE_CONFIRMED: 'Exam Attendance Confirmed', SITTING: 'Exam In Progress', diff --git a/apps/portal/src/app/features/licensing/exam-stage.spec.ts b/apps/portal/src/app/features/licensing/exam-stage.spec.ts index 22ec0deca..2003537e9 100644 --- a/apps/portal/src/app/features/licensing/exam-stage.spec.ts +++ b/apps/portal/src/app/features/licensing/exam-stage.spec.ts @@ -29,8 +29,8 @@ describe('examStageFor', () => { expect(examStageFor({ status: 'CERTIFICATE_ISSUED' })).toBeNull(); }); - it('reads a paid application as eligible to register, not as waiting', () => { - expect(examStageFor({ status: 'EXAM_PAID' })).toBe('ELIGIBLE_TO_REGISTER'); + it('reads a paid application as Exam Paid, not as awaiting a date', () => { + expect(examStageFor({ status: 'EXAM_PAID' })).toBe('EXAM_PAID'); }); it('reports a registration whose attendance has not been taken', () => { diff --git a/apps/portal/src/app/features/licensing/exam-stage.ts b/apps/portal/src/app/features/licensing/exam-stage.ts index c7aaaaaec..1697f7c4b 100644 --- a/apps/portal/src/app/features/licensing/exam-stage.ts +++ b/apps/portal/src/app/features/licensing/exam-stage.ts @@ -16,7 +16,7 @@ import type { MyRegistration } from '../exams/pages/ExamsPage'; * already recorded — this only names what the records add up to. */ export type ExamStage = - | 'ELIGIBLE_TO_REGISTER' + | 'EXAM_PAID' | 'REGISTERED' | 'ATTENDANCE_CONFIRMED' | 'SITTING' @@ -41,9 +41,11 @@ export function examStageFor( if (app.status === 'EXAM_PASSED') return 'PASSED'; if (app.status === 'EXAM_FAILED') return 'FAILED'; - // EXAM_PAID is "prerequisites done, sitting not yet chosen": the fee has - // cleared and nothing is left but for the candidate to pick a session. - if (app.status === 'EXAM_PAID') return 'ELIGIBLE_TO_REGISTER'; + // The fee has cleared and nothing is left but for the candidate to pick a + // session. Named after the status rather than after what the candidate + // should do next: "Eligible to Register" read as a status of its own and + // said less than the plain one. + if (app.status === 'EXAM_PAID') return 'EXAM_PAID'; if (app.status !== 'EXAM_SCHEDULED') return null; diff --git a/apps/portal/src/app/i18n/locales/am.ts b/apps/portal/src/app/i18n/locales/am.ts index be22f0b46..db485310f 100644 --- a/apps/portal/src/app/i18n/locales/am.ts +++ b/apps/portal/src/app/i18n/locales/am.ts @@ -244,7 +244,7 @@ export const am: Translations = { empty: 'እስካሁን ምንም ፍቃድ አልተሰጥዎትም። ማመልከቻ ከተፈቀደና ከተከፈለ በኋላ እዚህ ይታያል።', }, examStage: { - ELIGIBLE_TO_REGISTER: "ብቁ ነዎት — ለፈተና ይመዝገቡ", + EXAM_PAID: "የፈተና ክፍያ ተከፍሏል", REGISTERED: "የፈተና ቀን፦ {{date}}", ATTENDANCE_CONFIRMED: "መገኘት ተረጋግጧል", SITTING: "ፈተና በመካሄድ ላይ", diff --git a/apps/portal/src/app/i18n/locales/en.ts b/apps/portal/src/app/i18n/locales/en.ts index ac1925ca9..ce8de654f 100644 --- a/apps/portal/src/app/i18n/locales/en.ts +++ b/apps/portal/src/app/i18n/locales/en.ts @@ -249,7 +249,7 @@ export const en = { * from the application status alone — see exam-stage.ts. */ examStage: { - ELIGIBLE_TO_REGISTER: 'Eligible — register for a sitting', + EXAM_PAID: 'Exam Paid', REGISTERED: 'Exam scheduled: {{date}}', ATTENDANCE_CONFIRMED: 'Attendance confirmed', SITTING: 'Exam in progress',