mirror of
https://github.com/gmod-integration/lua.git
synced 2025-03-15 22:07:34 +00:00
add: sync warn
This commit is contained in:
parent
b96777d014
commit
5127cc2307
|
@ -4,19 +4,17 @@ local conFuncs = {
|
||||||
["try"] = function() gmInte.tryConfig() end,
|
["try"] = function() gmInte.tryConfig() end,
|
||||||
["refresh"] = function() gmInte.refreshSettings() end,
|
["refresh"] = function() gmInte.refreshSettings() end,
|
||||||
["get-server-id"] = function() print(gmInte.config.id || "none") end,
|
["get-server-id"] = function() print(gmInte.config.id || "none") end,
|
||||||
["screenshot"] = function(args)
|
["export-warns"] = function() hook.Run("GmodIntegration:ExportWarns") end
|
||||||
if !args[2] then return gmInte.log("No SteamID64 provided") end
|
|
||||||
for _, ply in pairs(player.GetAll()) do
|
|
||||||
if ply:SteamID64() == args[2] then return gmInte.takeScreenshot(ply) end
|
|
||||||
end
|
|
||||||
end,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
concommand.Add("gmi", function(ply, cmd, args)
|
local function cmdExecuted(ply, cmd, args)
|
||||||
if ply:IsPlayer() && !ply:IsSuperAdmin() then return end
|
if ply:IsPlayer() && !ply:IsSuperAdmin() then return end
|
||||||
if conFuncs[args[1]] then
|
if conFuncs[args[1]] then
|
||||||
conFuncs[args[1]](args)
|
conFuncs[args[1]](args)
|
||||||
else
|
else
|
||||||
gmInte.log("Unknown Command Argument")
|
gmInte.log("Unknown Command Argument")
|
||||||
end
|
end
|
||||||
end)
|
end
|
||||||
|
|
||||||
|
concommand.Add("gmi", cmdExecuted)
|
||||||
|
concommand.Add("gmod-integration", cmdExecjsonuted)
|
52
lua/gmod_integration/server/sv_sync_warn.lua
Normal file
52
lua/gmod_integration/server/sv_sync_warn.lua
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
function gmInte.playerWarn(ply, admin, reason)
|
||||||
|
gmInte.http.post("/servers/:serverID/players/" .. ply:SteamID64() .. "/warns", {
|
||||||
|
["player"] = gmInte.getPlayerFormat(ply),
|
||||||
|
["admin"] = gmInte.getPlayerFormat(admin),
|
||||||
|
["reason"] = reason
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
function gmInte.playerWarnID(plySteamID64, adminSteamID64, reason)
|
||||||
|
gmInte.http.post("/servers/:serverID/players/" .. plySteamID64 .. "/warns", {
|
||||||
|
["adminSteamID64"] = adminSteamID64,
|
||||||
|
["reason"] = reason
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
function gmInte.serverExportWarns(data)
|
||||||
|
gmInte.http.post("/servers/:serverID/warns", {
|
||||||
|
["warns"] = data
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
if AWarn then
|
||||||
|
hook.Add("AWarnPlayerWarned", "AWarn3WarningDiscordRelay", function(pl, aID, reason)
|
||||||
|
local admin = AWarn:GetPlayerFromID64(aID)
|
||||||
|
if !admin then return end
|
||||||
|
gmInte.playerWarn(pl, admin, reason)
|
||||||
|
end)
|
||||||
|
|
||||||
|
hook.Add("AWarnPlayerIDWarned", "AWarn3IDWarningDiscordRelay", function(pID, aID, reason)
|
||||||
|
local admin = AWarn:GetPlayerFromID64(aID)
|
||||||
|
if !admin then return end
|
||||||
|
gmInte.playerWarnID(pID, aID, reason)
|
||||||
|
end)
|
||||||
|
|
||||||
|
hook.Add("GmodIntegration:ExportWarns", "AWarn3ExportWarns", function()
|
||||||
|
local query = "SELECT * FROM awarn3_warningtable"
|
||||||
|
AWarn3_MySQLite.query(query, function(result)
|
||||||
|
if !result then return end
|
||||||
|
local warns = {}
|
||||||
|
for k, v in pairs(result) do
|
||||||
|
table.insert(warns, {
|
||||||
|
playerSteamID64 = v.PlayerID,
|
||||||
|
adminSteamID64 = v.AdminID,
|
||||||
|
reason = v.WarningReason,
|
||||||
|
date = v.WarningDate
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
gmInte.serverExportWarns(warns)
|
||||||
|
end, function(err) gmInte.logError("AWarn3", "Failed to export warns: " .. err) end)
|
||||||
|
end)
|
||||||
|
end
|
Loading…
Reference in New Issue
Block a user