diff --git a/src/app/(admin)/admin/programs/[id]/page.tsx b/src/app/(admin)/admin/programs/[id]/page.tsx
index 473e7c1..b864673 100644
--- a/src/app/(admin)/admin/programs/[id]/page.tsx
+++ b/src/app/(admin)/admin/programs/[id]/page.tsx
@@ -18,7 +18,7 @@ import {
TableHeader,
TableRow,
} from '@/components/ui/table'
-import { ArrowLeft, Pencil, Plus, Settings } from 'lucide-react'
+import { ArrowLeft, Pencil, Plus } from 'lucide-react'
import { formatDateOnly } from '@/lib/utils'
interface ProgramDetailPageProps {
@@ -64,20 +64,12 @@ export default async function ProgramDetailPage({ params }: ProgramDetailPagePro
-
-
-
-
+
{program.description && (
diff --git a/src/app/(admin)/admin/programs/[id]/settings/page.tsx b/src/app/(admin)/admin/programs/[id]/settings/page.tsx
deleted file mode 100644
index 4e0bd29..0000000
--- a/src/app/(admin)/admin/programs/[id]/settings/page.tsx
+++ /dev/null
@@ -1,83 +0,0 @@
-'use client'
-
-import { useParams } from 'next/navigation'
-import Link from 'next/link'
-import { trpc } from '@/lib/trpc/client'
-import { Button } from '@/components/ui/button'
-import {
- Card,
- CardContent,
- CardDescription,
- CardHeader,
- CardTitle,
-} from '@/components/ui/card'
-import { Skeleton } from '@/components/ui/skeleton'
-import { ArrowLeft } from 'lucide-react'
-
-export default function ProgramSettingsPage() {
- const params = useParams()
- const id = params.id as string
-
- const { data: program, isLoading } = trpc.program.get.useQuery({ id })
-
- if (isLoading) {
- return (
-
- )
- }
-
- return (
-
-
-
-
-
-
-
Program Settings
-
- Configure settings for {program?.name}
-
-
-
-
-
-
- Program Configuration
-
- Advanced settings for this program
-
-
-
-
- Program-specific settings will be available in a future update.
-
- For now, manage rounds and projects through the program detail page.
-
-
-
-
-
-
-
- )
-}
diff --git a/src/app/(admin)/admin/projects/[id]/assignments/page.tsx b/src/app/(admin)/admin/projects/[id]/assignments/page.tsx
deleted file mode 100644
index 7e6d4c6..0000000
--- a/src/app/(admin)/admin/projects/[id]/assignments/page.tsx
+++ /dev/null
@@ -1,177 +0,0 @@
-'use client'
-
-import { useParams } from 'next/navigation'
-import Link from 'next/link'
-import { trpc } from '@/lib/trpc/client'
-import { Button } from '@/components/ui/button'
-import { Badge } from '@/components/ui/badge'
-import {
- Card,
- CardContent,
- CardDescription,
- CardHeader,
- CardTitle,
-} from '@/components/ui/card'
-import {
- Table,
- TableBody,
- TableCell,
- TableHead,
- TableHeader,
- TableRow,
-} from '@/components/ui/table'
-import { Skeleton } from '@/components/ui/skeleton'
-import {
- AlertDialog,
- AlertDialogAction,
- AlertDialogCancel,
- AlertDialogContent,
- AlertDialogDescription,
- AlertDialogFooter,
- AlertDialogHeader,
- AlertDialogTitle,
- AlertDialogTrigger,
-} from '@/components/ui/alert-dialog'
-import { ArrowLeft, Plus, UserMinus } from 'lucide-react'
-import { toast } from 'sonner'
-
-export default function ProjectAssignmentsPage() {
- const params = useParams()
- const id = params.id as string
-
- const { data: project, isLoading: projectLoading } = trpc.project.get.useQuery({ id })
- const { data: assignments = [], isLoading: assignmentsLoading } = trpc.assignment.listByProject.useQuery({ projectId: id })
-
- const utils = trpc.useUtils()
-
- const removeAssignment = trpc.assignment.delete.useMutation({
- onSuccess: () => {
- toast.success('Assignment removed')
- utils.assignment.listByProject.invalidate({ projectId: id })
- },
- onError: (error) => {
- toast.error(error.message || 'Failed to remove assignment')
- },
- })
-
- // Remove handled via AlertDialog in JSX
-
- const isLoading = projectLoading || assignmentsLoading
-
- if (isLoading) {
- return (
-
- )
- }
-
- return (
-
-
-
-
-
-
-
-
Jury Assignments
-
- {project?.title}
-
-
-
-
-
-
-
-
- Assigned Jury Members
-
- {assignments.length} jury member{assignments.length !== 1 ? 's' : ''} assigned to evaluate this project
-
-
-
- {assignments.length === 0 ? (
-
- No jury members assigned yet.
-
- ) : (
-
-
-
- Jury Member
- Status
- Actions
-
-
-
- {assignments.map((assignment) => (
-
-
-
-
{assignment.user.name}
-
{assignment.user.email}
-
-
-
-
- {assignment.evaluation?.status || 'Pending'}
-
-
-
-
-
-
-
-
-
- Remove Assignment
-
- Remove this jury member from the project? Their evaluation data will also be deleted.
-
-
-
- Cancel
- removeAssignment.mutate({ id: assignment.id })}>
- Remove
-
-
-
-
-
-
- ))}
-
-
- )}
-
-
-
- )
-}
diff --git a/src/app/(admin)/admin/rounds/[id]/page.tsx b/src/app/(admin)/admin/rounds/[id]/page.tsx
index 4881c60..f52f2fe 100644
--- a/src/app/(admin)/admin/rounds/[id]/page.tsx
+++ b/src/app/(admin)/admin/rounds/[id]/page.tsx
@@ -602,46 +602,57 @@ function RoundDetailContent({ roundId }: { roundId: string }) {
Quick Actions
-
-
-
- {!isFilteringRound && (
-