export const dynamic = 'force-dynamic' import { redirect } from 'next/navigation' import { createClient } from '@/lib/supabase/server' import { ReportForm } from '@/components/incidents/report-form' interface Props { searchParams: Promise<{ zone?: string }> } export default async function ReportPage({ searchParams }: Props) { const { zone } = await searchParams const supabase = await createClient() const { data, error: authError } = await supabase.auth.getUser() if (authError || !data?.user) redirect(`/login?redirect=/report${zone ? `?zone=${zone}` : ''}`) let zoneData: { id: string; name: string; site_id: string; sites: { name: string } } | null = null if (zone) { const { data: zd } = await supabase .from('zones') .select('id, name, site_id, sites (name)') .eq('qr_code_token', zone) .single() zoneData = zd as typeof zoneData } return (

Report an Incident

{zoneData ? (

{(zoneData.sites as any)?.name ?? 'Unknown Site'} — {zoneData.name}

) : (

No zone detected — zone will not be recorded

)}
) }