import express from 'express'; import { Database } from '../database/database.js'; import { authenticateApiKey, apiLimiter } from '../middleware/midware.js'; const AntibanRoutes = express.Router(); AntibanRoutes.get("/api/v1/ai/ban-user", authenticateApiKey, apiLimiter, async (req, res) => { const dbClient = new Database("AkenoXJs"); const collection = dbClient.collection("ban_users"); try { const userIdString = req.query.user_id; const ReasonString = req.query.reason; const userIdNumber = Number(userIdString); if (isNaN(userIdNumber)) { return res.status(400).json({ error: "Invalid or missing user_id" }); } const existingUser = await collection.findOne({ user_ban: userIdNumber }); if (existingUser) { return res.status(200).json({ message: `UserBan is already: ${existingUser.user_ban}`, is_ban: true}); } const userDocument = { user_ban: userIdNumber, createdAt: new Date() }; if (ReasonString) { userDocument.reason = ReasonString; } await collection.insertOne(userDocument); res.json({ message: `UserBan Successfully banned: ${userIdNumber}`, is_ban: true }); } catch (error) { res.status(401).json({ error: error.message }); } }); export { AntibanRoutes };