diff options
| -rw-r--r-- | config-default.toml | 14 | ||||
| -rw-r--r-- | metricity/config.py | 13 | ||||
| -rw-r--r-- | metricity/exts/event_listeners/guild_listeners.py | 5 | 
3 files changed, 21 insertions, 11 deletions
| diff --git a/config-default.toml b/config-default.toml index 60374ef..de8290b 100644 --- a/config-default.toml +++ b/config-default.toml @@ -29,13 +29,23 @@ staff_categories = [      721459859500957726,      430484673248886784,      749736277464842262, -    749735995460550726 +    749735995460550726, +    787641585624940544, +    412287621704843264, +    881573419878076456, +    820711852652494868 +] + +# Channels that should be flagged as staff only by channel ID +staff_channels =[ +    412375055910043655  ]  # Don't report messages for the following categories  ignore_categories = [      714494672835444826, -    890331800025563216 +    890331800025563216, +    895417395261341766  ]  [database] diff --git a/metricity/config.py b/metricity/config.py index 5a57d59..99fd0c2 100644 --- a/metricity/config.py +++ b/metricity/config.py @@ -2,7 +2,7 @@  import logging  from os import environ  from pathlib import Path -from typing import Any, Dict, List, Optional, Tuple +from typing import Any, Optional  import toml  from deepmerge import Merger @@ -17,7 +17,7 @@ class MetricityConfigurationError(Exception):      """Exception signifying something has gone awry whilst parsing Metricity config.""" -def get_section(section: str) -> Dict[str, Any]: +def get_section(section: str) -> dict[str, Any]:      """      Load the section config from config-default.toml and config.toml. @@ -64,8 +64,8 @@ class ConfigSection(type):      def __new__(          cls: type,          name: str, -        bases: Tuple[type], -        dictionary: Dict[str, Any] +        bases: tuple[type], +        dictionary: dict[str, Any]      ) -> type:          """Use the section attr in the subclass to fill in the values from the TOML."""          config = get_section(dictionary["section"]) @@ -114,8 +114,9 @@ class BotConfig(metaclass=ConfigSection):      guild_id: int      staff_role_id: int -    staff_categories: List[int] -    ignore_categories: List[int] +    staff_categories: list[int] +    staff_channels: list[int] +    ignore_categories: list[int]  class DatabaseConfig(metaclass=ConfigSection): diff --git a/metricity/exts/event_listeners/guild_listeners.py b/metricity/exts/event_listeners/guild_listeners.py index 18eb79a..67b20bc 100644 --- a/metricity/exts/event_listeners/guild_listeners.py +++ b/metricity/exts/event_listeners/guild_listeners.py @@ -92,9 +92,8 @@ class GuildListeners(commands.Cog):              if not isinstance(channel, discord.CategoryChannel):                  category_id = str(channel.category.id) if channel.category else None                  # Cast to bool so is_staff is False if channel.category is None -                is_staff = bool( -                    channel.category -                    and channel.category.id in BotConfig.staff_categories +                is_staff = channel.id in BotConfig.staff_channels or bool( +                    channel.category and channel.category.id in BotConfig.staff_categories                  )                  if db_chan := await models.Channel.get(str(channel.id)):                      await db_chan.update( | 
