import React from "react"; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"; import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { Textarea } from "@/components/ui/textarea"; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select"; import { Badge } from "@/components/ui/badge"; import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@/components/ui/table"; import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger } from "@/components/ui/alert-dialog"; import { UserX, Shield, Search, Ban, Unlock } from "lucide-react"; import { useState } from "react"; export default function AdminBanPage() { const [banData, setBanData] = useState({ username: "", reason: "", duration: "", description: "" }); // Mock data for banned users const bannedUsers = [ { id: "1", username: "spam_user", email: "spam@example.com", reason: "Spam", bannedBy: "admin1", banDate: "2024-01-15", duration: "Permanent", status: "active" }, { id: "2", username: "fraud_vendor", email: "fraud@example.com", reason: "Fraud", bannedBy: "admin1", banDate: "2024-01-20", duration: "30 days", status: "active" }, { id: "3", username: "policy_violator", email: "violator@example.com", reason: "Policy Violation", bannedBy: "admin1", banDate: "2024-01-25", duration: "7 days", status: "expired" } ]; const handleBanUser = () => { // Handle ban user logic console.log("Banning user:", banData); }; return (

Ban Users

Manage user bans and suspensions

{/* Stats Cards */}
Active Bans
12

Currently banned

Permanent Bans
3

Permanent suspensions

Temporary Bans
9

Time-limited bans

Appeals Pending
2

Awaiting review

{/* Ban User Form */} Ban User Enter user details and reason for banning
setBanData({...banData, username: e.target.value})} />