mirror of
https://github.com/pacnpal/thrilltrack-explorer.git
synced 2025-12-20 08:51:13 -05:00
Refactor Admin Page Structure
This commit is contained in:
57
src/components/admin/UserManagement.tsx
Normal file
57
src/components/admin/UserManagement.tsx
Normal file
@@ -0,0 +1,57 @@
|
||||
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs';
|
||||
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card';
|
||||
import { ProfileManager } from '@/components/moderation/ProfileManager';
|
||||
import { UserRoleManager } from '@/components/moderation/UserRoleManager';
|
||||
import { Users, Shield, UserCheck, UserX } from 'lucide-react';
|
||||
|
||||
export function UserManagement() {
|
||||
return (
|
||||
<div className="space-y-6">
|
||||
<div className="flex items-center gap-3">
|
||||
<Users className="w-6 h-6 text-primary" />
|
||||
<h2 className="text-2xl font-semibold">User Management</h2>
|
||||
</div>
|
||||
|
||||
<Tabs defaultValue="profiles" className="space-y-4">
|
||||
<TabsList className="grid w-full grid-cols-2">
|
||||
<TabsTrigger value="profiles" className="flex items-center gap-2">
|
||||
<UserCheck className="w-4 h-4" />
|
||||
Profile Management
|
||||
</TabsTrigger>
|
||||
<TabsTrigger value="roles" className="flex items-center gap-2">
|
||||
<Shield className="w-4 h-4" />
|
||||
Role Management
|
||||
</TabsTrigger>
|
||||
</TabsList>
|
||||
|
||||
<TabsContent value="profiles">
|
||||
<Card>
|
||||
<CardHeader>
|
||||
<CardTitle>Profile Management</CardTitle>
|
||||
<CardDescription>
|
||||
Manage user profiles, ban users, and handle account moderation
|
||||
</CardDescription>
|
||||
</CardHeader>
|
||||
<CardContent>
|
||||
<ProfileManager />
|
||||
</CardContent>
|
||||
</Card>
|
||||
</TabsContent>
|
||||
|
||||
<TabsContent value="roles">
|
||||
<Card>
|
||||
<CardHeader>
|
||||
<CardTitle>Role Management</CardTitle>
|
||||
<CardDescription>
|
||||
Assign and manage user roles and permissions
|
||||
</CardDescription>
|
||||
</CardHeader>
|
||||
<CardContent>
|
||||
<UserRoleManager />
|
||||
</CardContent>
|
||||
</Card>
|
||||
</TabsContent>
|
||||
</Tabs>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -8,8 +8,7 @@ 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';
|
||||
import { ProfileManager } from '@/components/moderation/ProfileManager';
|
||||
import { UserManagement } from '@/components/admin/UserManagement';
|
||||
import { AdminHeader } from '@/components/layout/AdminHeader';
|
||||
|
||||
export default function Admin() {
|
||||
@@ -100,7 +99,7 @@ export default function Admin() {
|
||||
</div>
|
||||
|
||||
<Tabs defaultValue="queue" className="space-y-6">
|
||||
<TabsList className="grid w-full grid-cols-4">
|
||||
<TabsList className="grid w-full grid-cols-3">
|
||||
<TabsTrigger value="queue" className="flex items-center gap-2">
|
||||
<FileText className="w-4 h-4" />
|
||||
Moderation Queue
|
||||
@@ -109,13 +108,9 @@ export default function Admin() {
|
||||
<Flag className="w-4 h-4" />
|
||||
Reports
|
||||
</TabsTrigger>
|
||||
<TabsTrigger value="profiles" className="flex items-center gap-2">
|
||||
<Users className="w-4 h-4" />
|
||||
Profile Management
|
||||
</TabsTrigger>
|
||||
<TabsTrigger value="users" className="flex items-center gap-2">
|
||||
<Shield className="w-4 h-4" />
|
||||
User Roles
|
||||
<Users className="w-4 h-4" />
|
||||
User Management
|
||||
</TabsTrigger>
|
||||
</TabsList>
|
||||
|
||||
@@ -147,32 +142,8 @@ export default function Admin() {
|
||||
</Card>
|
||||
</TabsContent>
|
||||
|
||||
<TabsContent value="profiles">
|
||||
<Card>
|
||||
<CardHeader>
|
||||
<CardTitle>Profile Management</CardTitle>
|
||||
<CardDescription>
|
||||
Manage user profiles, ban status, and role assignments
|
||||
</CardDescription>
|
||||
</CardHeader>
|
||||
<CardContent>
|
||||
<ProfileManager />
|
||||
</CardContent>
|
||||
</Card>
|
||||
</TabsContent>
|
||||
|
||||
<TabsContent value="users">
|
||||
<Card>
|
||||
<CardHeader>
|
||||
<CardTitle>User Role Management</CardTitle>
|
||||
<CardDescription>
|
||||
Advanced role management and user search
|
||||
</CardDescription>
|
||||
</CardHeader>
|
||||
<CardContent>
|
||||
<UserRoleManager />
|
||||
</CardContent>
|
||||
</Card>
|
||||
<UserManagement />
|
||||
</TabsContent>
|
||||
</Tabs>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user