diff options
Diffstat (limited to '')
| -rw-r--r-- | bot/cogs/antispam.py | 9 | ||||
| -rw-r--r-- | bot/cogs/off_topic_names.py | 12 | ||||
| -rw-r--r-- | bot/constants.py | 1 | ||||
| -rw-r--r-- | config-default.yml | 2 | 
4 files changed, 11 insertions, 13 deletions
| diff --git a/bot/cogs/antispam.py b/bot/cogs/antispam.py index eb3a75703..0c6a02bf9 100644 --- a/bot/cogs/antispam.py +++ b/bot/cogs/antispam.py @@ -10,7 +10,7 @@ from bot.cogs.moderation import Moderation  from bot.cogs.modlog import ModLog  from bot.constants import (      AntiSpam as AntiSpamConfig, Channels, -    Colours, DEBUG_MODE, Event, +    Colours, DEBUG_MODE, Event, Filter,      Guild as GuildConfig, Icons,      Roles, STAFF_ROLES,  ) @@ -30,11 +30,6 @@ RULE_FUNCTION_MAPPING = {      'newlines': rules.apply_newlines,      'role_mentions': rules.apply_role_mentions  } -WHITELISTED_CHANNELS = ( -    Channels.admins, Channels.announcements, Channels.big_brother_logs, -    Channels.devlog, Channels.devtest, Channels.helpers, Channels.message_log, -    Channels.mod_alerts, Channels.modlog, Channels.staff_lounge -)  class AntiSpam: @@ -55,7 +50,7 @@ class AntiSpam:              not message.guild              or message.guild.id != GuildConfig.id              or message.author.bot -            or (message.channel.id in WHITELISTED_CHANNELS and not DEBUG_MODE) +            or (message.channel.id in Filter.channel_whitelist and not DEBUG_MODE)              or (any(role.id in STAFF_ROLES for role in message.author.roles) and not DEBUG_MODE)          ):              return diff --git a/bot/cogs/off_topic_names.py b/bot/cogs/off_topic_names.py index fd90bb0c8..c0d2e5dc5 100644 --- a/bot/cogs/off_topic_names.py +++ b/bot/cogs/off_topic_names.py @@ -19,7 +19,7 @@ class OffTopicName(Converter):      @staticmethod      async def convert(ctx: Context, argument: str): -        allowed_characters = ("-", "โ", "'", "`") +        allowed_characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ!?'`-"          if not (2 <= len(argument) <= 96):              raise BadArgument("Channel name must be between 2 and 96 chars long") @@ -30,11 +30,11 @@ class OffTopicName(Converter):                  "alphanumeric characters, minus signs or apostrophes."              ) -        elif not argument.islower(): -            raise BadArgument("Channel name must be lowercase") - -        # Replace some unusable apostrophe-like characters with "โ". -        return argument.replace("'", "โ").replace("`", "โ") +        # Replace invalid characters with unicode alternatives. +        table = str.maketrans( +            allowed_characters, '๐ ๐ก๐ข๐ฃ๐ค๐ฅ๐ฆ๐ง๐จ๐ฉ๐ช๐ซ๐ฌ๐ญ๐ฎ๐ฏ๐ฐ๐ฑ๐ฒ๐ณ๐ด๐ต๐ถ๐ท๐ธ๐นว๏ผโโ-' +        ) +        return argument.translate(table)  async def update_names(bot: Bot, headers: dict): diff --git a/bot/constants.py b/bot/constants.py index 033d19f7b..ead26c91d 100644 --- a/bot/constants.py +++ b/bot/constants.py @@ -352,6 +352,7 @@ class Channels(metaclass=YAMLGetter):      reddit: int      talent_pool: int      userlog: int +    user_event_a: int      verification: int diff --git a/config-default.yml b/config-default.yml index dd5126230..2f5dcf5dc 100644 --- a/config-default.yml +++ b/config-default.yml @@ -115,6 +115,7 @@ guild:          staff_lounge:      &STAFF_LOUNGE  464905259261755392          talent_pool:       &TALENT_POOL   534321732593647616          userlog:                          528976905546760203 +        user_event_a:      &USER_EVENT_A  592000283102674944          verification:                     352442727016693763      ignored: [*ADMINS, *MESSAGE_LOG, *MODLOG] @@ -215,6 +216,7 @@ filter:          - *STAFF_LOUNGE          - *DEVTEST          - *TALENT_POOL +        - *USER_EVENT_A      role_whitelist:          - *ADMIN_ROLE | 
