Added user remove command #23
This commit is contained in:
		@@ -224,3 +224,36 @@ class UserGroup(DiscordCommandABC):
 | 
			
		||||
    async def set_autocomplete(self, interaction: discord.Interaction, current: str) -> List[app_commands.Choice[str]]:
 | 
			
		||||
        atr_list = [self._atr_dict["xp"]]
 | 
			
		||||
        return [app_commands.Choice(name=atr, value=atr) for atr in atr_list]
 | 
			
		||||
 | 
			
		||||
    async def remove(self, ctx: context, atr: str, member: discord.Member = none):
 | 
			
		||||
        self._logger.debug(__name__, f'Received command user-remove {ctx}:{member}')
 | 
			
		||||
 | 
			
		||||
        if member is None or not isinstance(member, discord.Member):
 | 
			
		||||
            member = ctx.author
 | 
			
		||||
 | 
			
		||||
        server = self._servers.find_server_by_discord_id(ctx.guild.id)
 | 
			
		||||
        user = self._users.find_user_by_discord_id_and_server_id(member.id, server.server_id)
 | 
			
		||||
 | 
			
		||||
        match atr:
 | 
			
		||||
            case 'xp':
 | 
			
		||||
                user.xp = 0
 | 
			
		||||
 | 
			
		||||
            case 'ontime':
 | 
			
		||||
                # ToDo: SQL-Statement to delete all records for dcUser in user_joined_voice_channel
 | 
			
		||||
                return
 | 
			
		||||
 | 
			
		||||
            case other:
 | 
			
		||||
                # ToDo: Move atr_not_found
 | 
			
		||||
                await self._message_service.send_interaction_msg(ctx.interaction, self._t.transform('modules.base.user.error.atr_not_found').format(atr))
 | 
			
		||||
                return
 | 
			
		||||
 | 
			
		||||
        # ToDo: Add text for it
 | 
			
		||||
        await self._message_service.send_interaction_msg(
 | 
			
		||||
            ctx.interaction,
 | 
			
		||||
            self._t.transform(f'modules.base.user.remove.{atr}').format(member.mention, value)
 | 
			
		||||
        )
 | 
			
		||||
 | 
			
		||||
    @remove.autocomplete('atr')
 | 
			
		||||
    async def remove_autocomplete(self, interaction: discord.Interaction, current: str) -> List[app_commands.Choice[str]]:
 | 
			
		||||
        atr_list = ['xp', 'ontime']
 | 
			
		||||
        return [app_commands.Choice(name=atr, value=atr) for atr in atr_list]
 | 
			
		||||
		Reference in New Issue
	
	Block a user