40 lines
1.1 KiB
Python
40 lines
1.1 KiB
Python
from datetime import datetime
|
|
|
|
def banish(self, name, source, response):
|
|
botnick = self.bot.botnick
|
|
author = self.bot.author
|
|
user, reason = response.split("!banish ")[1].split(" ", 1)
|
|
|
|
if name != author:
|
|
return
|
|
|
|
if user not in self.bot.memories["users"]:
|
|
self.bot.memories["users"][user] = dict()
|
|
|
|
self.bot.memories["users"][user]["blacklist"] = {
|
|
"reason": reason.strip(),
|
|
"when": datetime.now().timestamp()
|
|
}
|
|
|
|
self.bot.thread(self.bot.save_memories)
|
|
|
|
confirmation = "{} has been banished for reason: {}".format(user, reason)
|
|
self.bot.send_message(source, confirmation)
|
|
|
|
def pardon(self, name, source, response):
|
|
botnick = self.bot.botnick
|
|
author = self.bot.author
|
|
user = response.split("!pardon ")[1].strip()
|
|
|
|
if name != author:
|
|
return
|
|
|
|
user_memories = self.bot.memories["users"].get(user, dict())
|
|
if user_memories.get("blacklist", None) is not None:
|
|
del user_memories["blacklist"]
|
|
|
|
self.bot.thread(self.bot.save_memories)
|
|
|
|
confirmation = "{} has been pardoned".format(user)
|
|
self.bot.send_message(source, confirmation)
|