92b743512c
AdminPanel: Сводка раздел первый (initialSection='dashboard') DashboardSection: users stats, channels by platform, posts stats, revenue vs AI costs cards, drafts pending alert, registrations bar chart 14d SECTIONS: +Dashboard, +Engine (Движок) API route: /api/admin/dashboard proxy
20 lines
527 B
JavaScript
20 lines
527 B
JavaScript
import { redirect } from 'next/navigation';
|
|
import { requireUser } from '@/lib/session';
|
|
import Header from '@/components/Header';
|
|
import AdminPanel from '@/components/AdminPanel';
|
|
|
|
export const dynamic = 'force-dynamic';
|
|
|
|
export default async function SystemPage({ searchParams }) {
|
|
const user = await requireUser();
|
|
if (!user) redirect('/login');
|
|
if (!user.isAdmin) redirect('/');
|
|
|
|
return (
|
|
<>
|
|
<Header user={user} />
|
|
<AdminPanel initialSection={searchParams?.section || 'dashboard'} />
|
|
</>
|
|
);
|
|
}
|