import { useEffect } from 'react'; import { useNavigate } from 'react-router-dom'; import { Shield, Users, FileText, Flag, AlertCircle } from 'lucide-react'; import { useUserRole } from '@/hooks/useUserRole'; import { useAuth } from '@/hooks/useAuth'; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card'; import { Badge } from '@/components/ui/badge'; import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs'; import { ModerationQueue } from '@/components/moderation/ModerationQueue'; import { ReportsQueue } from '@/components/moderation/ReportsQueue'; import { UserRoleManager } from '@/components/moderation/UserRoleManager'; export default function Admin() { const { user, loading: authLoading } = useAuth(); const { isModerator, loading: roleLoading } = useUserRole(); const navigate = useNavigate(); useEffect(() => { if (!authLoading && !roleLoading) { if (!user) { navigate('/auth'); return; } if (!isModerator()) { navigate('/'); return; } } }, [user, authLoading, roleLoading, isModerator, navigate]); if (authLoading || roleLoading) { return (

Loading admin panel...

); } if (!user || !isModerator()) { return null; } return (

Admin Dashboard

Manage content moderation and user roles

Pending Reviews
--

Reviews awaiting moderation

Open Reports
--

User reports to review

Flagged Content
--

Auto-flagged items

Moderation Queue Reports User Roles Content Moderation Queue Review and moderate pending content submissions and flagged reviews User Reports Review reports submitted by users about inappropriate content User Role Management Manage moderator and admin privileges for users
); }