From de063c14114c204599dfa737835e278501d3a047 Mon Sep 17 00:00:00 2001 From: Zevaryx Date: Thu, 31 Mar 2022 00:15:59 -0600 Subject: [PATCH] Add context menu for userinfo --- jarvis/cogs/util.py | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/jarvis/cogs/util.py b/jarvis/cogs/util.py index efa0c03..0c284a2 100644 --- a/jarvis/cogs/util.py +++ b/jarvis/cogs/util.py @@ -17,8 +17,10 @@ from dis_snek.models.discord.guild import Guild from dis_snek.models.discord.role import Role from dis_snek.models.discord.user import Member, User from dis_snek.models.snek.application_commands import ( + CommandTypes, OptionTypes, SlashCommandChoice, + context_menu, slash_command, slash_option, ) @@ -178,16 +180,6 @@ class UtilCog(Scale): await ctx.send(embed=embed, file=color_show) - @slash_command( - name="userinfo", - description="Get user info", - ) - @slash_option( - name="user", - description="User to get info of", - opt_type=OptionTypes.USER, - required=False, - ) async def _userinfo(self, ctx: InteractionContext, user: User = None) -> None: await ctx.defer() if not user: @@ -233,6 +225,23 @@ class UtilCog(Scale): await ctx.send(embed=embed) + @slash_command( + name="userinfo", + description="Get user info", + ) + @slash_option( + name="user", + description="User to get info of", + opt_type=OptionTypes.USER, + required=False, + ) + async def _userinfo_slsh(self, ctx: InteractionContext, user: User = None) -> None: + await self._userinfo() + + @context_menu(name="User Info", context_type=CommandTypes.USER) + async def _userinfo_menu(self, ctx: InteractionContext) -> None: + await self._userinfo(ctx, ctx.target) + @slash_command(name="serverinfo", description="Get server info") async def _server_info(self, ctx: InteractionContext) -> None: guild: Guild = ctx.guild