From f8bf58e57c261b6584521ff59691507879c25821 Mon Sep 17 00:00:00 2001 From: Joao Ramos Date: Tue, 9 Jan 2024 18:25:00 +0000 Subject: [PATCH] Removed ID and improved unknown user handling --- src/exams/pdf/group.test.report.tsx | 6 +-- src/pages/api/assignments/[id]/export.tsx | 47 +++++++++-------------- 2 files changed, 21 insertions(+), 32 deletions(-) diff --git a/src/exams/pdf/group.test.report.tsx b/src/exams/pdf/group.test.report.tsx index 7e91694f..31a6aaed 100644 --- a/src/exams/pdf/group.test.report.tsx +++ b/src/exams/pdf/group.test.report.tsx @@ -7,14 +7,14 @@ import { Text, Image, StyleSheet, + Font, } from "@react-pdf/renderer"; import { styles } from "./styles"; import TestReportFooter from "./test.report.footer"; import { ModuleScore } from "@/interfaces/module.scores"; import ProgressBar from "./progress.bar"; -// import { Font } from "@react-pdf/renderer"; -// Font.registerHyphenationCallback((word) => [word]); +Font.registerHyphenationCallback((word) => [word]); interface Props { date: string; @@ -220,7 +220,6 @@ const GroupTestReport = ({ Date of test Result Level - ID {studentsData.map( ({ id, name, email, gender, date, result, level }, index) => ( @@ -239,7 +238,6 @@ const GroupTestReport = ({ {date} {result} {level} - {id} ) )} diff --git a/src/pages/api/assignments/[id]/export.tsx b/src/pages/api/assignments/[id]/export.tsx index 2d4ed674..e913425d 100644 --- a/src/pages/api/assignments/[id]/export.tsx +++ b/src/pages/api/assignments/[id]/export.tsx @@ -223,36 +223,27 @@ async function post(req: NextApiRequest, res: NextApiResponse) { return data.assignees.map((id) => { const user = users.find((u) => u.id === id); - - if (user) { - const exams = flattenResults.filter((e) => e.user === id); - return { - id, - name: user.name, - email: user.email, - gender: user.demographicInformation?.gender, - date: - exams.length === 0 - ? "N/A" - : new Date(exams[0].date).toLocaleDateString(undefined, { - year: "numeric", - month: "numeric", - day: "numeric", - }), - result: - exams.length === 0 - ? "N/A" - : `${exams[0].score.correct}/${exams[0].score.total}`, - }; - } + const exams = flattenResults.filter((e) => e.user === id); + const date = + exams.length === 0 + ? "N/A" + : new Date(exams[0].date).toLocaleDateString(undefined, { + year: "numeric", + month: "numeric", + day: "numeric", + }); + const result = + exams.length === 0 + ? "N/A" + : `${exams[0].score.correct}/${exams[0].score.total}`; return { - id: "N/A", - name: "N/A", - email: "N/A", - gender: "N/A", - date: "N/A", - result: "N/A", + id, + name: user?.name || "N/A", + email: user?.email || "N/A", + gender: user?.demographicInformation?.gender || "N/A", + date, + result, }; }); };