aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bot/cogs/jams.py38
1 files changed, 22 insertions, 16 deletions
diff --git a/bot/cogs/jams.py b/bot/cogs/jams.py
index 1d062b0c2..0ebff5428 100644
--- a/bot/cogs/jams.py
+++ b/bot/cogs/jams.py
@@ -1,6 +1,6 @@
import logging
-from discord import Member, PermissionOverwrite, utils
+from discord import CategoryChannel, Member, PermissionOverwrite, utils
from discord.ext import commands
from more_itertools import unique_everseen
@@ -40,21 +40,7 @@ class CodeJams(commands.Cog):
)
return
- code_jam_category = utils.get(ctx.guild.categories, name="Code Jam")
-
- if code_jam_category is None:
- log.info("Code Jam category not found, creating it.")
-
- category_overwrites = {
- ctx.guild.default_role: PermissionOverwrite(read_messages=False),
- ctx.guild.me: PermissionOverwrite(read_messages=True)
- }
-
- code_jam_category = await ctx.guild.create_category_channel(
- "Code Jam",
- overwrites=category_overwrites,
- reason="It's code jam time!"
- )
+ code_jam_category = await self.get_category(ctx)
# First member is always the team leader
team_channel_overwrites = {
@@ -108,6 +94,26 @@ class CodeJams(commands.Cog):
f"**Team Members:** {' '.join(member.mention for member in members[1:])}"
)
+ async def get_category(self, ctx: commands.Context) -> CategoryChannel:
+ """Create Code Jam category when this don't exist and return this."""
+ code_jam_category = utils.get(ctx.guild.categories, name="Code Jam")
+
+ if code_jam_category is None:
+ log.info("Code Jam category not found, creating it.")
+
+ category_overwrites = {
+ ctx.guild.default_role: PermissionOverwrite(read_messages=False),
+ ctx.guild.me: PermissionOverwrite(read_messages=True)
+ }
+
+ code_jam_category = await ctx.guild.create_category_channel(
+ "Code Jam",
+ overwrites=category_overwrites,
+ reason="It's code jam time!"
+ )
+
+ return code_jam_category
+
def setup(bot: Bot) -> None:
"""Load the CodeJams cog."""