From f4da3dd5c9060a3a10f9aa7ec3d6160eb763f25f Mon Sep 17 00:00:00 2001 From: Zevaryx Date: Sun, 29 May 2022 19:17:35 -0600 Subject: [PATCH] Validate that user exists, and validate context arguments, closes #143 --- jarvis/utils/cogs.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/jarvis/utils/cogs.py b/jarvis/utils/cogs.py index 3794b1e..f176a10 100644 --- a/jarvis/utils/cogs.py +++ b/jarvis/utils/cogs.py @@ -11,7 +11,12 @@ from naff.models.discord.embed import EmbedField from jarvis.utils import build_embed MODLOG_LOOKUP = {"Ban": Ban, "Kick": Kick, "Mute": Mute, "Warning": Warning} -IGNORE_COMMANDS = {"Ban": ["bans"], "Kick": [], "Mute": ["unmute"], "Warning": ["warnings"]} +IGNORE_COMMANDS = { + "Ban": ["bans", "unban"], + "Kick": [], + "Mute": ["unmute"], + "Warning": ["warnings"], +} class ModcaseCog(Extension): @@ -36,6 +41,12 @@ class ModcaseCog(Extension): if not user and not ctx.target_id: self.logger.warning("Admin action %s missing user, exiting", name) return + + if isinstance(user, str): + user = await self.bot.fetch_user(user) + if not user: + self.logger.warning("User does not exist") + return if ctx.target_id: user = ctx.target coll = MODLOG_LOOKUP.get(name, None)