Fill functionality for delete user from_table and from_category.
This commit is contained in:
@@ -126,7 +126,20 @@ class DataManagementCog(commands.Cog, name="Table Management"):
|
|||||||
category_name (str): Category to remove user from. Is SlashOption.
|
category_name (str): Category to remove user from. Is SlashOption.
|
||||||
user_name (str): The user to remove. Is SlashOption.
|
user_name (str): The user to remove. Is SlashOption.
|
||||||
"""
|
"""
|
||||||
# TODO ensure input params are valid
|
|
||||||
|
guild = highscores_data.get_guild(interaction.guild_id)
|
||||||
|
|
||||||
|
try:
|
||||||
|
guild.get_table(table_name).get_category(category_name).remove_score(user_name)
|
||||||
|
await send_highscore_message(
|
||||||
|
interaction.guild.get_channel(guild.highscore_channel), guild, guild.get_table(table_name)
|
||||||
|
)
|
||||||
|
await interaction.response.send_message(
|
||||||
|
f'User "{user_name}" removed from "{category_name}".', ephemeral=True
|
||||||
|
)
|
||||||
|
|
||||||
|
except nextcord.errors.ApplicationInvokeError:
|
||||||
|
await interaction.response.send_message("Invalid parameter(s).", ephemeral=True)
|
||||||
|
|
||||||
@user.subcommand(description="Deletes a user's scores from entire table.")
|
@user.subcommand(description="Deletes a user's scores from entire table.")
|
||||||
async def from_table(
|
async def from_table(
|
||||||
@@ -143,7 +156,18 @@ class DataManagementCog(commands.Cog, name="Table Management"):
|
|||||||
table_name (str): Table to remove user from. Is SlashOption.
|
table_name (str): Table to remove user from. Is SlashOption.
|
||||||
user_name (str): The user to remove. Is SlashOption.
|
user_name (str): The user to remove. Is SlashOption.
|
||||||
"""
|
"""
|
||||||
# TODO ensure params are valid
|
guild = highscores_data.get_guild(interaction.guild_id)
|
||||||
|
|
||||||
|
try:
|
||||||
|
for category in guild.get_table(table_name).categories:
|
||||||
|
category.remove_score(user_name)
|
||||||
|
await send_highscore_message(
|
||||||
|
interaction.guild.get_channel(guild.highscore_channel), guild, guild.get_table(table_name)
|
||||||
|
)
|
||||||
|
await interaction.response.send_message(f'User "{user_name}" removed from all categories.', ephemeral=True)
|
||||||
|
|
||||||
|
except nextcord.errors.ApplicationInvokeError:
|
||||||
|
await interaction.response.send_message("Invalid parameter(s).", ephemeral=True)
|
||||||
|
|
||||||
@from_category.on_autocomplete("table_name")
|
@from_category.on_autocomplete("table_name")
|
||||||
@from_table.on_autocomplete("table_name")
|
@from_table.on_autocomplete("table_name")
|
||||||
|
|||||||
Reference in New Issue
Block a user