feat: admin panel — dashboard, articles list, editor, auth, cover regen, AI generate
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
import { cookies } from 'next/headers';
|
||||
|
||||
const SESSION_COOKIE = 'zp_admin_session';
|
||||
const VALID_TOKEN = process.env.ADMIN_PASSWORD || 'zeropost_admin_2026';
|
||||
|
||||
export async function checkAdminAuth() {
|
||||
const jar = await cookies();
|
||||
const token = jar.get(SESSION_COOKIE)?.value;
|
||||
return token === VALID_TOKEN;
|
||||
}
|
||||
|
||||
export async function requireAdminAuth() {
|
||||
const ok = await checkAdminAuth();
|
||||
if (!ok) {
|
||||
const { redirect } = await import('next/navigation');
|
||||
redirect('/admin/login');
|
||||
}
|
||||
}
|
||||
|
||||
export { SESSION_COOKIE, VALID_TOKEN };
|
||||
Reference in New Issue
Block a user