import { redirect } from 'next/navigation';

const apiUrl = process.env.NEXT_PUBLIC_API_URL || 'http://localhost:3001';

async function getFeaturedEventSlug(): Promise<string | null> {
  try {
    const revalidateSeconds =
      parseInt(process.env.NEXT_EVENT_REVALIDATE_SECONDS || '3600', 10) || 3600;
    const response = await fetch(`${apiUrl}/api/events/next/upcoming`, {
      next: { tags: ['next-event'], revalidate: revalidateSeconds },
    });
    if (!response.ok) return null;
    const data = await response.json();
    return data.event?.slug || null;
  } catch {
    return null;
  }
}

export default async function FeaturedEventPage() {
  const slug = await getFeaturedEventSlug();
  redirect(slug ? `/events/${slug}` : '/events');
}
