aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bot/constants.py4
-rw-r--r--bot/utils/channel.py7
-rw-r--r--config-default.yml8
3 files changed, 14 insertions, 5 deletions
diff --git a/bot/constants.py b/bot/constants.py
index 0a3e48616..2e6c84fc7 100644
--- a/bot/constants.py
+++ b/bot/constants.py
@@ -468,6 +468,7 @@ class Guild(metaclass=YAMLGetter):
id: int
invite: str # Discord invite, gets embedded in chat
moderation_channels: List[int]
+ moderation_categories: List[int]
moderation_roles: List[int]
modlog_blacklist: List[int]
reminder_whitelist: List[int]
@@ -628,6 +629,9 @@ STAFF_ROLES = Guild.staff_roles
# Channel combinations
MODERATION_CHANNELS = Guild.moderation_channels
+# Category combinations
+MODERATION_CATEGORIES = Guild.moderation_categories
+
# Bot replies
NEGATIVE_REPLIES = [
"Noooooo!!",
diff --git a/bot/utils/channel.py b/bot/utils/channel.py
index 487794c59..1e67d1a9b 100644
--- a/bot/utils/channel.py
+++ b/bot/utils/channel.py
@@ -19,10 +19,11 @@ def is_help_channel(channel: discord.TextChannel) -> bool:
def is_mod_channel(channel: discord.TextChannel) -> bool:
"""Return True if `channel` is one of the moderation channels or in one of the moderation categories."""
log.trace(f"Checking if #{channel} is a mod channel.")
- categories = (Categories.modmail, Categories.logs)
- return (channel.id in constants.MODERATION_CHANNELS
- or any(is_in_category(channel, category) for category in categories))
+ return (
+ channel.id in constants.MODERATION_CHANNELS
+ or any(is_in_category(channel, category) for category in constants.MODERATION_CATEGORIES)
+ )
def is_in_category(channel: discord.TextChannel, category_id: int) -> bool:
diff --git a/config-default.yml b/config-default.yml
index 12f6582ec..baa5c783a 100644
--- a/config-default.yml
+++ b/config-default.yml
@@ -128,8 +128,8 @@ guild:
help_available: 691405807388196926
help_in_use: 696958401460043776
help_dormant: 691405908919451718
- modmail: 714494672835444826
- logs: 468520609152892958
+ modmail: &MODMAIL 714494672835444826
+ logs: &LOGS 468520609152892958
channels:
# Public announcement and news channels
@@ -200,6 +200,10 @@ guild:
big_brother_logs: &BB_LOGS 468507907357409333
talent_pool: &TALENT_POOL 534321732593647616
+ moderation_categories:
+ - *MODMAIL
+ - *LOGS
+
moderation_channels:
- *ADMINS
- *ADMIN_SPAM