From 5748e416beef5af4e0701c70829cbd4ac5d99b21 Mon Sep 17 00:00:00 2001 From: David Gwilliam Date: Mon, 30 Mar 2026 21:30:41 -0700 Subject: [PATCH] fix: remove duplicate tournament variable definitions in admin pages --- src/app/admin/tournaments/[id]/edit/page.tsx | 12 ++++++------ src/app/admin/tournaments/[id]/results/page.tsx | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/app/admin/tournaments/[id]/edit/page.tsx b/src/app/admin/tournaments/[id]/edit/page.tsx index 0d2544a..543f6e4 100644 --- a/src/app/admin/tournaments/[id]/edit/page.tsx +++ b/src/app/admin/tournaments/[id]/edit/page.tsx @@ -2,7 +2,7 @@ import { prisma } from "@/lib/prisma" import Navigation from "@/components/Navigation" import Link from "next/link" import { notFound, redirect } from "next/navigation" -import { getSession } from "@/lib/auth-simple" +import { canManageTournament } from "@/lib/permissions" import EditTournamentForm from "@/components/EditTournamentForm" interface PageProps { @@ -12,14 +12,14 @@ interface PageProps { } export default async function EditTournamentPage({ params }: PageProps) { - const session = await getSession() - - if (!session || session.user?.role !== "club_admin") { + const tournamentId = parseInt(params.id) + + // Check if user can manage this tournament + const permission = await canManageTournament(tournamentId) + if (!permission.allowed) { redirect("/auth/login") } - const tournamentId = parseInt(params.id) - const tournament = await prisma.event.findUnique({ where: { id: tournamentId }, }) diff --git a/src/app/admin/tournaments/[id]/results/page.tsx b/src/app/admin/tournaments/[id]/results/page.tsx index 8c7a574..247ae40 100644 --- a/src/app/admin/tournaments/[id]/results/page.tsx +++ b/src/app/admin/tournaments/[id]/results/page.tsx @@ -2,7 +2,7 @@ import { prisma } from "@/lib/prisma" import Navigation from "@/components/Navigation" import Link from "next/link" import { notFound, redirect } from "next/navigation" -import { getSession } from "@/lib/auth-simple" +import { canManageTournament } from "@/lib/permissions" import MatchEditor from "@/components/MatchEditor" interface PageProps { @@ -12,14 +12,14 @@ interface PageProps { } export default async function TournamentResultsPage({ params }: PageProps) { - const session = await getSession() - - if (!session || session.user?.role !== "club_admin") { + const tournamentId = parseInt(params.id) + + // Check if user can manage this tournament + const permission = await canManageTournament(tournamentId) + if (!permission.allowed) { redirect("/auth/login") } - const tournamentId = parseInt(params.id) - const tournament = await prisma.event.findUnique({ where: { id: tournamentId }, })