import { cookies } from 'next/headers' const ADMIN_PASSWORD = 'HelloWorld' const ADMIN_SESSION_COOKIE = 'admin_session' // Check if admin is authenticated export async function isAdminAuthenticated(): Promise { try { const cookieStore = await cookies() const session = cookieStore.get(ADMIN_SESSION_COOKIE)?.value return session === 'authenticated' } catch (error) { return false } } // Verify admin password export function verifyAdminPassword(password: string): boolean { return password === ADMIN_PASSWORD } // Set admin session export async function setAdminSession(): Promise { const cookieStore = await cookies() cookieStore.set(ADMIN_SESSION_COOKIE, 'authenticated', { httpOnly: true, secure: process.env.NODE_ENV === 'production', sameSite: 'lax', maxAge: 60 * 60 * 24, // 24 hours }) } // Clear admin session export async function clearAdminSession(): Promise { const cookieStore = await cookies() cookieStore.delete(ADMIN_SESSION_COOKIE) } // Get admin session from request (for API routes) export function getAdminSessionFromRequest(request: Request): boolean { try { const cookieHeader = request.headers.get('cookie') if (!cookieHeader) { return false } const cookies = cookieHeader.split(';').reduce((acc, cookie) => { const [key, value] = cookie.trim().split('=') acc[key] = value return acc }, {} as Record) return cookies[ADMIN_SESSION_COOKIE] === 'authenticated' } catch (error) { return false } }