From cfc5720925b6bbc40c45507f8579145a0014a6eb Mon Sep 17 00:00:00 2001 From: Joseph Banks Date: Thu, 30 Apr 2020 02:05:29 +0100 Subject: Run a category check before logging that we are checking for an answered help channel --- bot/cogs/help_channels.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bot/cogs/help_channels.py b/bot/cogs/help_channels.py index b5cb37015..b714a1642 100644 --- a/bot/cogs/help_channels.py +++ b/bot/cogs/help_channels.py @@ -649,10 +649,11 @@ class HelpChannels(Scheduler, commands.Cog): async def check_for_answer(self, message: discord.Message) -> None: """Checks for whether new content in a help channel comes from non-claimants.""" channel = message.channel - log.trace(f"Checking if #{channel} ({channel.id}) has been answered.") # Confirm the channel is an in use help channel if self.is_in_category(channel, constants.Categories.help_in_use): + log.trace(f"Checking if #{channel} ({channel.id}) has been answered.") + # Check if there is an entry in unanswered (does not persist across restarts) if channel.id in self.unanswered: claimant_id = self.help_channel_claimants[channel].id -- cgit v1.2.3 From ba442e1d2f1165e9a8d9d4f8363df9153a6bdd61 Mon Sep 17 00:00:00 2001 From: MarkKoz Date: Thu, 30 Apr 2020 18:30:09 -0700 Subject: Display animated avatars in the user info command Fixes #914 --- bot/cogs/information.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bot/cogs/information.py b/bot/cogs/information.py index 4eb36c340..ef2f308ca 100644 --- a/bot/cogs/information.py +++ b/bot/cogs/information.py @@ -206,7 +206,7 @@ class Information(Cog): description="\n\n".join(description) ) - embed.set_thumbnail(url=user.avatar_url_as(format="png")) + embed.set_thumbnail(url=user.avatar_url_as(static_format="png")) embed.colour = user.top_role.colour if roles else Colour.blurple() return embed -- cgit v1.2.3 From b43379d663a86680f762d20a7bd27a20927d4bfc Mon Sep 17 00:00:00 2001 From: MarkKoz Date: Thu, 30 Apr 2020 18:35:03 -0700 Subject: Tests: change avatar_url_as assertion to use static_format --- tests/bot/cogs/test_information.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/bot/cogs/test_information.py b/tests/bot/cogs/test_information.py index 6dace1080..b5f928dd6 100644 --- a/tests/bot/cogs/test_information.py +++ b/tests/bot/cogs/test_information.py @@ -485,7 +485,7 @@ class UserEmbedTests(unittest.TestCase): user.avatar_url_as.return_value = "avatar url" embed = asyncio.run(self.cog.create_user_embed(ctx, user)) - user.avatar_url_as.assert_called_once_with(format="png") + user.avatar_url_as.assert_called_once_with(static_format="png") self.assertEqual(embed.thumbnail.url, "avatar url") -- cgit v1.2.3 From bc478485248199f93ee8d5a64ddcb7516f1c6ef5 Mon Sep 17 00:00:00 2001 From: Savant-Dev Date: Fri, 1 May 2020 06:17:03 -0400 Subject: Update extension filter to distinguish .txt in cases where messages are longer than 2000 characters --- bot/cogs/antimalware.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/bot/cogs/antimalware.py b/bot/cogs/antimalware.py index 79bf486a4..053f1a01d 100644 --- a/bot/cogs/antimalware.py +++ b/bot/cogs/antimalware.py @@ -38,6 +38,18 @@ class AntiMalware(Cog): "It looks like you tried to attach a Python file - " f"please use a code-pasting service such as {URLs.site_schema}{URLs.site_paste}" ) + elif ".txt" in extensions_blocked: + # Work around Discord AutoConversion of messages longer than 2000 chars to .txt + cmd_channel = self.bot.get_channel(Channels.bot_commands) + embed.description = ( + "**Uh-oh!** It looks like your message got zapped by our spam filter. " + "We currently don't allow `.txt` attachments, so here are some tips to help you travel safely: \n\n" + "**1.** You tried to send a message longer than 2000 characters (Discord uploads these as files) \n" + "• Try shortening your message to fit within the character limit or use a pasting service (see below) " + "\n\n**2.** You tried to show someone your code (no worries, we'd love to see it!)\n" + f"• Try using codeblocks (run `!code-blocks` in {cmd_channel.mention}) or use a pasting service \n\n" + f"If you would like, here is a pasting service we like to use: {URLs.site_schema}{URLs.site_paste}" + ) elif extensions_blocked: whitelisted_types = ', '.join(AntiMalwareConfig.whitelist) meta_channel = self.bot.get_channel(Channels.meta) -- cgit v1.2.3 From 0ce4b2fc20f1a5ef671a415d36e78e997796f19e Mon Sep 17 00:00:00 2001 From: Savant-Dev Date: Fri, 1 May 2020 06:19:19 -0400 Subject: Update extension filter to distinguish .txt in cases where messages are longer than 2000 characters --- bot/cogs/antimalware.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bot/cogs/antimalware.py b/bot/cogs/antimalware.py index 053f1a01d..72fb574b9 100644 --- a/bot/cogs/antimalware.py +++ b/bot/cogs/antimalware.py @@ -44,7 +44,7 @@ class AntiMalware(Cog): embed.description = ( "**Uh-oh!** It looks like your message got zapped by our spam filter. " "We currently don't allow `.txt` attachments, so here are some tips to help you travel safely: \n\n" - "**1.** You tried to send a message longer than 2000 characters (Discord uploads these as files) \n" + "**1.** You tried to send a message longer than 2000 characters \n" "• Try shortening your message to fit within the character limit or use a pasting service (see below) " "\n\n**2.** You tried to show someone your code (no worries, we'd love to see it!)\n" f"• Try using codeblocks (run `!code-blocks` in {cmd_channel.mention}) or use a pasting service \n\n" -- cgit v1.2.3 From b6ebfb756a03f337da0a3da37c985b798a316de2 Mon Sep 17 00:00:00 2001 From: Savant-Dev Date: Mon, 4 May 2020 18:49:01 -0400 Subject: Update antimalware to filter txt files in cases where messages were longer than 2000 chars --- bot/cogs/antimalware.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/bot/cogs/antimalware.py b/bot/cogs/antimalware.py index 72fb574b9..66b5073e8 100644 --- a/bot/cogs/antimalware.py +++ b/bot/cogs/antimalware.py @@ -44,11 +44,11 @@ class AntiMalware(Cog): embed.description = ( "**Uh-oh!** It looks like your message got zapped by our spam filter. " "We currently don't allow `.txt` attachments, so here are some tips to help you travel safely: \n\n" - "**1.** You tried to send a message longer than 2000 characters \n" - "• Try shortening your message to fit within the character limit or use a pasting service (see below) " - "\n\n**2.** You tried to show someone your code (no worries, we'd love to see it!)\n" - f"• Try using codeblocks (run `!code-blocks` in {cmd_channel.mention}) or use a pasting service \n\n" - f"If you would like, here is a pasting service we like to use: {URLs.site_schema}{URLs.site_paste}" + "• If you attempted to send a message longer than 2000 characters, try shortening your message " + "to fit within the character limit or use a pasting service (see below) \n\n" + "• If you tried to show someone your code, you can use codeblocks \n(run `!code-blocks` in " + f"{cmd_channel.mention} for more information) or use a pasting service like: " + f"\n\n{URLs.site_schema}{URLs.site_paste}" ) elif extensions_blocked: whitelisted_types = ', '.join(AntiMalwareConfig.whitelist) -- cgit v1.2.3