diff --git a/src/app/api/evaluations/[id]/route.ts b/src/app/api/evaluations/[id]/route.ts index 32535db..802174e 100644 --- a/src/app/api/evaluations/[id]/route.ts +++ b/src/app/api/evaluations/[id]/route.ts @@ -118,7 +118,7 @@ export async function PUT( const { id } = await params; const body = await req.json(); - const { candidateName, candidateRole, candidateTeam, evaluatorName, evaluationDate, status, findings, recommendations, dimensionScores } = body; + const { candidateName, candidateRole, candidateTeam, evaluatorName, evaluationDate, status, findings, recommendations, dimensionScores, isPublic } = body; const existing = await prisma.evaluation.findUnique({ where: { id } }); if (!existing) { @@ -146,6 +146,7 @@ export async function PUT( if (status != null) updateData.status = status; if (findings != null) updateData.findings = findings; if (recommendations != null) updateData.recommendations = recommendations; + if (typeof isPublic === "boolean") updateData.isPublic = isPublic; if (Object.keys(updateData).length > 0) { await prisma.auditLog.create({ diff --git a/src/app/evaluations/[id]/page.tsx b/src/app/evaluations/[id]/page.tsx index 2c28c8f..26ebc09 100644 --- a/src/app/evaluations/[id]/page.tsx +++ b/src/app/evaluations/[id]/page.tsx @@ -45,6 +45,7 @@ interface Evaluation { recommendations: string | null; dimensionScores: DimensionScore[]; sharedWith?: { id: string; user: { id: string; email: string; name: string | null } }[]; + isPublic?: boolean; } export default function EvaluationDetailPage() { @@ -168,6 +169,7 @@ export default function EvaluationDetailPage() { status: toSave.status, findings: toSave.findings, recommendations: toSave.recommendations, + isPublic: toSave.isPublic ?? false, dimensionScores: (toSave.dimensionScores ?? []).map((ds) => ({ dimensionId: ds.dimensionId, evaluationId: id, @@ -258,6 +260,20 @@ export default function EvaluationDetailPage() { > {saving ? "..." : "save"} +