diff --git a/plugin/discord/cog.py b/plugin/discord/cog.py index 5aa97ba..b63c20a 100644 --- a/plugin/discord/cog.py +++ b/plugin/discord/cog.py @@ -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) diff --git a/plugin/discord/ui/campaign.py b/plugin/discord/ui/campaign.py index 7135c42..8b7e248 100644 --- a/plugin/discord/ui/campaign.py +++ b/plugin/discord/ui/campaign.py @@ -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(