From 0be8c5ecc7826ac99537834bfe2a4c7a5db0182e Mon Sep 17 00:00:00 2001 From: Matt Date: Mon, 6 Apr 2026 16:45:25 -0400 Subject: [PATCH] feat: add chair toggle to admin award juror management Co-Authored-By: Claude Opus 4.6 (1M context) --- src/app/(admin)/admin/awards/[id]/page.tsx | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/app/(admin)/admin/awards/[id]/page.tsx b/src/app/(admin)/admin/awards/[id]/page.tsx index b413feb..00cf794 100644 --- a/src/app/(admin)/admin/awards/[id]/page.tsx +++ b/src/app/(admin)/admin/awards/[id]/page.tsx @@ -477,6 +477,13 @@ export default function AwardDetailPage({ const removeJuror = trpc.specialAward.removeJuror.useMutation({ onSuccess: () => utils.specialAward.listJurors.invalidate({ awardId }), }) + const setChair = trpc.specialAward.setChair.useMutation({ + onSuccess: () => { + utils.specialAward.listJurors.invalidate({ awardId }) + toast.success('Chair status updated') + }, + onError: () => toast.error('Failed to update chair status'), + }) const setWinner = trpc.specialAward.setWinner.useMutation({ onSuccess: invalidateAward, }) @@ -1328,6 +1335,7 @@ export default function AwardDetailPage({ Member Role + Chair Actions @@ -1352,6 +1360,15 @@ export default function AwardDetailPage({ {j.user.role.replace('_', ' ')} + + + setChair.mutate({ awardId, userId: j.userId, isChair: checked }) + } + disabled={setChair.isPending} + /> +