From 3775c7a5a4589f3a3a79e67cf76aff0eb2167215 Mon Sep 17 00:00:00 2001 From: Sweetbread Date: Thu, 11 May 2023 15:39:30 +0300 Subject: [PATCH] [feat]: Add Admin commands --- cogs/admin.py | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 cogs/admin.py diff --git a/cogs/admin.py b/cogs/admin.py new file mode 100644 index 0000000..2fb809b --- /dev/null +++ b/cogs/admin.py @@ -0,0 +1,34 @@ +import discord +from discord import app_commands +from discord.ext import commands + +from loguru import logger + + +@app_commands.guild_only() +class Admin(app_commands.Group): + @app_commands.command() + @app_commands.default_permissions(ban_members=True) + async def ban(self, itr: discord.Interaction, user: discord.Member, reason:str = None, delete_message_mins:int = 0): + try: + await user.ban(reason=reason, delete_message_seconds=delete_message_mins*60) + await itr.response.send_message(f"Member {user.name} was banned") + except discord.errors.Forbidden: + await itr.response.send_message("Error: Forbidden", ephemeral=True) + + + @app_commands.command() + @app_commands.default_permissions(kick_members=True) + async def kick(self, itr: discord.Interaction, user: discord.Member, reason:str = None): + try: + await user.kick(reason=reason) + await itr.response.send_message(f"Member {user.name} was kicked") + except discord.errors.Forbidden: + await itr.response.send_message("Error: Forbidden", ephemeral=True) + + + +async def setup(bot: commands.Bot): + bot.tree.add_command(Admin()) + + logger.info(f"{__file__} loaded")