fix: Add client to testing webhook

This commit is contained in:
2026-07-30 11:59:50 +03:00
parent 5873b0fe65
commit a681da058f
2 changed files with 29 additions and 16 deletions
+8 -7
View File
@@ -123,7 +123,9 @@ class CampaignCog(LionCog):
return
# Open campaign UI
widget = CampaignDashboard(bot=self.bot, campaign=campaign, callerid=ctx.author.id)
widget = CampaignDashboard(
bot=self.bot, campaign=campaign, callerid=ctx.author.id
)
await widget.run(ctx.interaction)
await widget.wait()
@@ -179,7 +181,7 @@ class CampaignCog(LionCog):
# If logging webhook is given, check that it works
if logging_webhook is not None:
webhook = ThreadedWebhook.from_url(logging_webhook)
webhook = ThreadedWebhook.from_url(logging_webhook, client=self.bot)
try:
await webhook.test_webhook()
except (discord.HTTPException, discord.Forbidden):
@@ -202,7 +204,9 @@ class CampaignCog(LionCog):
f"Setup and started your reward campaign {campaign.row.campaign_name}! Good luck"
)
# Open campaign UI
widget = CampaignDashboard(bot=self.bot, campaign=campaign, callerid=ctx.author.id)
widget = CampaignDashboard(
bot=self.bot, campaign=campaign, callerid=ctx.author.id
)
await widget.run(ctx.interaction)
await widget.wait()
@@ -278,10 +282,7 @@ class CampaignCog(LionCog):
)
# Ack creation
await ctx.reply(
"Updated your campaign, good luck!",
ephemeral=True
)
await ctx.reply("Updated your campaign, good luck!", ephemeral=True)
campaign_configure_cmd.autocomplete("campaign_name")(_campaign_acmpl)
+21 -9
View File
@@ -100,31 +100,43 @@ class CampaignDashboard(MessageUI):
table = {
"Created at": discord.utils.format_dt(campaign.row.created_at, "F"),
"Started at": started_at,
"Moderator Role": f"<&@{campaign.row.moderator_role_id}>" if campaign.row.moderator_role_id else "*Not Set*",
"Logging webhook": "*Set Up*" if campaign.row.logging_webhook_url else "*Not Set*",
"Moderator Role": f"<@&{campaign.row.moderator_role_id}>"
if campaign.row.moderator_role_id
else "*Not Set*",
"Logging webhook": "*Set Up*"
if campaign.row.logging_webhook_url
else "*Not Set*",
"Rewards Earned": str(rewards_earned),
"Rewards Cap": str(reward_cap),
}
if campaign.row.completed_at is not None:
table['Finished at'] = discord.utils.format_dt(campaign.row.completed_at, "F")
prop_table = '\n'.join(tabulate(*table.items()))
table["Finished at"] = discord.utils.format_dt(
campaign.row.completed_at, "F"
)
prop_table = "\n".join(tabulate(*table.items()))
embed.description = f"{description}\n\n{prop_table}"
# Brief summary of rewards in columns. 12 per column. Empty titles?
rewardrows = []
for reward in all_rewards:
name = reward.twitch_user_name or str(reward.twitch_user_id) or str(reward.profileid)
name = (
reward.twitch_user_name
or str(reward.twitch_user_id)
or str(reward.profileid)
)
fluffed = reward.fulfilled_at is not None
fluffed_emoji = '' if fluffed else '🔳'
fluffed_emoji = "" if fluffed else "🔳"
rewardrows.append(f"{fluffed_emoji} {name}")
blocks = ['\n'.join(rewardrows[i:i+12]) for i in range(0, len(rewardrows), 12)]
blocks = [
"\n".join(rewardrows[i : i + 12]) for i in range(0, len(rewardrows), 12)
]
embed.add_field(
name="Rewards Summary",
value=blocks[0] if blocks else 'No Rewards Earned',
inline=True
value=blocks[0] if blocks else "No Rewards Earned",
inline=True,
)
for block in blocks[1:]:
embed.add_field(