2026-04-14 17:41:39 +02:00

48 lines
1.8 KiB
JavaScript

const consoleEntries = []
RegisterNetEvent("madmin:server:startliveconsole")
on('madmin:server:startliveconsole', () => {
RegisterConsoleListener((channel, message) => {
if (message === "\n") return
if (consoleEntries.length >= 100) {
consoleEntries.splice(0, 1)
}
consoleEntries.push(`[${crypto.randomBytes(5).toString("hex")} ${channel}] ${message}`)
})
})
/**
* @param {string} key
* @returns {string}
*/
app.use("/getAllConsoleEntries.lvorex", express.json())
app.post("/getAllConsoleEntries.lvorex", async (req, res) => {
const postBody = req.body
const { keyFound, userKey } = await controlKey(req, postBody.key)
if (keyFound === false) return res.json({ code: 404, message: "Not authorized." })
const PermissionCheck = await checkPermission(userKey.rank, "LiveConsole", 0)
if (!PermissionCheck) return res.json({ code: 401, message: "Your rank is not enough." })
res.json({ code: 200, message: consoleEntries })
})
/**
* @param {string} key
* @param {string} sentConsoleEntries
* @returns {string}
*/
app.use("/getNewConsoleEntries.lvorex", express.json({ limit: '50mb' }))
app.post("/getNewConsoleEntries.lvorex", async (req, res) => {
const postBody = req.body
const { keyFound, userKey } = await controlKey(req, postBody.key)
if (keyFound === false) return res.json({ code: 404, message: "Not authorized." })
const PermissionCheck = await checkPermission(userKey.rank, "LiveConsole", 0)
if (!PermissionCheck) return res.json({ code: 401, message: "Your rank is not enough." })
const newEntries = consoleEntries.filter(x => !postBody.sentConsoleEntries.includes(x))
res.json({ code: 200, message: newEntries })
})