From 346c3585c11c1a22ca14bb7b9fabd280b13eb8b0 Mon Sep 17 00:00:00 2001 From: mengstabketemaw Date: Sat, 27 Jun 2026 12:07:26 +0300 Subject: [PATCH] feat: add logo to exam print view commit --- .../app/features/exam/pages/ExamDetailPage.tsx | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/apps/backoffice/src/app/features/exam/pages/ExamDetailPage.tsx b/apps/backoffice/src/app/features/exam/pages/ExamDetailPage.tsx index 52d904e9c..89187b097 100644 --- a/apps/backoffice/src/app/features/exam/pages/ExamDetailPage.tsx +++ b/apps/backoffice/src/app/features/exam/pages/ExamDetailPage.tsx @@ -245,9 +245,21 @@ export function ExamDetailPage() { ); } - const handlePrint = () => { + const handlePrint = async () => { const printWindow = window.open('', '_blank'); if (!printWindow) return; + + let logoBase64 = ''; + try { + const resp = await fetch('/ema-logo.png'); + const blob = await resp.blob(); + logoBase64 = await new Promise((resolve) => { + const reader = new FileReader(); + reader.onloadend = () => resolve(reader.result as string); + reader.readAsDataURL(blob); + }); + } catch { /* logo not available */ } + const qHtml = (exam.questions ?? []).map((q, i) => `

Question ${i + 1} (${q.points} pts — ${FORM_LABEL[q.form] ?? q.form})

@@ -262,6 +274,7 @@ export function ExamDetailPage() {
+ ${logoBase64 ? `` : ''}

${exam.title.en}

${exam.title.am}

Date: ${exam.date} | Venue: ${exam.venue}