diff --git a/src/meta/LionBot.py b/src/meta/LionBot.py index 7a62d04e..a93482c5 100644 --- a/src/meta/LionBot.py +++ b/src/meta/LionBot.py @@ -196,7 +196,7 @@ class LionBot(Bot): extra={'action': 'BotError', 'with_ctx': True} ) try: - await ctx.error_rely(exception.message) + await ctx.error_reply(exception.message) except Exception: pass except Exception: diff --git a/src/modules/economy/cog.py b/src/modules/economy/cog.py index e79bf172..fbf8901c 100644 --- a/src/modules/economy/cog.py +++ b/src/modules/economy/cog.py @@ -511,6 +511,7 @@ class Economy(LionCog): "Target user or role to view or update. Use @everyone to reset the entire guild." ), ) + @low_management_ward async def economy_reset_cmd( self, ctx: LionContext, @@ -634,7 +635,7 @@ class Economy(LionCog): # Do not create the member row if it does not already exist. # TODO: Audit logging trail await ctx.bot.core.data.Member.table.update_where( - guuildid=ctx.guild.id, + guildid=ctx.guild.id, userid=target.id, ).set(coins=starting_balance) await ctx.reply( diff --git a/src/modules/sysadmin/dash.py b/src/modules/sysadmin/dash.py index 85fea47b..eefe2e2b 100644 --- a/src/modules/sysadmin/dash.py +++ b/src/modules/sysadmin/dash.py @@ -4,8 +4,9 @@ The dashboard shows a summary of the various registered global bot settings. import discord import discord.ext.commands as cmds +import discord.app_commands as appcmd -from meta import LionBot, LionCog, LionContext +from meta import LionBot, LionCog, LionContext, conf from meta.app import appname from wards import sys_admin_ward @@ -15,6 +16,8 @@ from settings.groups import SettingGroup class LeoSettings(LionCog): depends = {'CoreCog'} + admin_guilds = conf.bog.getintlist('admin_guilds') + def __init__(self, bot: LionBot): self.bot = bot @@ -23,6 +26,7 @@ class LeoSettings(LionCog): @cmds.hybrid_group( name="leo" ) + @appcmd.guilds(*admin_guilds) @sys_admin_ward async def leo_group(self, ctx: LionContext): """ diff --git a/src/modules/sysadmin/presence.py b/src/modules/sysadmin/presence.py index ef742503..3d4ae20e 100644 --- a/src/modules/sysadmin/presence.py +++ b/src/modules/sysadmin/presence.py @@ -376,12 +376,12 @@ class PresenceCtrl(LionCog): name="presence", description="Globally set the bot status and activity." ) - @sys_admin_ward @appcmds.describe( status="Online status (online | idle | dnd | offline)", type="Activity type (watching | listening | playing | streaming)", string="Activity name, supports substitutions $in_vc, $voice_channels, $shard_guilds, $shard_members" ) + @sys_admin_ward async def presence_cmd( self, ctx: LionContext, diff --git a/src/tracking/text/cog.py b/src/tracking/text/cog.py index c54d3cec..ab2f7bbd 100644 --- a/src/tracking/text/cog.py +++ b/src/tracking/text/cog.py @@ -15,7 +15,7 @@ from meta.sharding import THIS_SHARD from meta.app import appname from utils.lib import utc_now, error_embed -from wards import low_management_ward +from wards import low_management_ward, sys_admin_ward from . import babel, logger from .data import TextTrackerData @@ -326,6 +326,7 @@ class TextTrackerCog(LionCog): xp_per_period=TextTrackerGlobalSettings.XPPerPeriod._desc, word_xp=TextTrackerGlobalSettings.WordXP._desc, ) + @sys_admin_ward async def leo_configure_text_tracking_cmd(self, ctx: LionContext, xp_per_period: Optional[appcmds.Range[int, 0, 2**15]] = None, word_xp: Optional[appcmds.Range[int, 0, 2**15]] = None):