(sponsors): Allow prompt to be nullable.

This commit is contained in:
2022-03-19 16:18:33 +02:00
parent b21e0e21e5
commit 2ff83b90fa
3 changed files with 10 additions and 20 deletions

View File

@@ -1,5 +1,3 @@
from cmdClient.checks import is_owner
from .module import module
@@ -7,20 +5,10 @@ from .module import module
name="sponsors",
group="Meta",
desc="Check out our wonderful partners!",
flags=('edit', 'prompt')
)
async def cmd_sponsors(ctx, flags):
async def cmd_sponsors(ctx):
"""
Usage``:
{prefix}sponsors
"""
if await is_owner.run(ctx) and any(flags.values()):
if flags['edit']:
# Run edit setting command
await ctx.client.settings.sponsor_message.command(ctx, ctx.client.conf.bot['data_appid'])
elif flags['prompt']:
# Run prompt setting command
await ctx.client.settings.sponsor_prompt.command(ctx, ctx.client.conf.bot['data_appid'])
else:
# Display message
await ctx.reply(**ctx.client.settings.sponsor_message.args(ctx))
await ctx.reply(**ctx.client.settings.sponsor_message.args(ctx))

View File

@@ -15,11 +15,12 @@ sponsored_commands = {'profile', 'stats', 'weekly', 'monthly'}
@LionContext.reply.add_wrapper
async def sponsor_reply_wrapper(func, ctx: LionContext, *args, **kwargs):
if ctx.cmd and ctx.cmd.name in sponsored_commands:
sponsor_hint = discord.Embed(
description=ctx.client.settings.sponsor_prompt.value,
colour=discord.Colour.dark_theme()
)
if 'embed' not in kwargs:
kwargs['embed'] = sponsor_hint
if (prompt := ctx.client.settings.sponsor_prompt.value):
sponsor_hint = discord.Embed(
description=prompt,
colour=discord.Colour.dark_theme()
)
if 'embed' not in kwargs:
kwargs['embed'] = sponsor_hint
return await func(ctx, *args, **kwargs)