.BANCHO. Silences are now logged in RAP and on discord
This commit is contained in:
@@ -3,6 +3,8 @@ from helpers import discordBotHelper
|
||||
from helpers import generalFunctions
|
||||
from helpers.systemHelper import runningUnderUnix
|
||||
from objects import glob
|
||||
from helpers import userHelper
|
||||
import time
|
||||
|
||||
ENDL = "\n" if runningUnderUnix() else "\r\n"
|
||||
|
||||
@@ -114,3 +116,17 @@ def pm(message):
|
||||
message -- chat message
|
||||
"""
|
||||
logMessage(message, "CHAT", bcolors.BLUE, of="chatlog_private.txt")
|
||||
|
||||
def rap(userID, message, discord=False, through="FokaBot"):
|
||||
"""
|
||||
Log a private message to Admin logs
|
||||
|
||||
userID -- userID of who made the action
|
||||
message -- message without subject (eg: "is a meme" becomes "user is a meme")
|
||||
discord -- if True, send message to discord
|
||||
through -- "through" thing string. Optional. Default: "FokaBot"
|
||||
"""
|
||||
glob.db.execute("INSERT INTO rap_logs (id, userid, text, datetime, through) VALUES (NULL, %s, %s, %s, %s)", [userID, message, int(time.time()), through])
|
||||
if discord == True:
|
||||
username = userHelper.getUsername(userID)
|
||||
logMessage("{} {}".format(username, message), discord=True)
|
||||
|
@@ -2,6 +2,8 @@ from helpers import passwordHelper
|
||||
from constants import gameModes
|
||||
from helpers import generalFunctions
|
||||
from objects import glob
|
||||
from helpers import logHelper as log
|
||||
import time
|
||||
|
||||
def getID(username):
|
||||
"""
|
||||
@@ -98,7 +100,8 @@ def getSilenceEnd(userID):
|
||||
return glob.db.fetch("SELECT silence_end FROM users WHERE id = %s", [userID])["silence_end"]
|
||||
|
||||
|
||||
def silence(userID, silenceEndTime, silenceReason):
|
||||
def silence(userID, silenceEndTime, silenceReason, author = 999):
|
||||
# TODO: user seconds insteaf od silenceEndTime
|
||||
"""
|
||||
Set userID's **ABSOLUTE** silence end UNIX time
|
||||
Remember to add time.time() to the silence length
|
||||
@@ -106,10 +109,20 @@ def silence(userID, silenceEndTime, silenceReason):
|
||||
userID -- userID
|
||||
silenceEndtime -- UNIX time when the silence ends
|
||||
silenceReason -- Silence reason shown on website
|
||||
author -- userID of who silenced the user. Default: 999
|
||||
"""
|
||||
|
||||
# db qurey
|
||||
glob.db.execute("UPDATE users SET silence_end = %s, silence_reason = %s WHERE id = %s", [silenceEndTime, silenceReason, userID])
|
||||
|
||||
# Loh
|
||||
seconds = silenceEndTime-int(time.time())
|
||||
targetUsername = getUsername(userID)
|
||||
# TODO: exists check im drunk rn i need to sleep (stampa piede ubriaco confirmed)
|
||||
if seconds > 0:
|
||||
log.rap(author, "has silenced {} for {} seconds for the following reason: \"{}\"".format(targetUsername, seconds, silenceReason), True)
|
||||
else:
|
||||
log.rap(author, "has removed {}'s silence".format(targetUsername), True)
|
||||
|
||||
def getRankedScore(userID, gameMode):
|
||||
"""
|
||||
Get userID's ranked score relative to gameMode
|
||||
|
Reference in New Issue
Block a user