Compare commits
2
Commits
77ce54f383
...
1cc46ce2fd
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1cc46ce2fd | ||
|
|
bb2d6b62fe |
+18
-12
@@ -1,6 +1,6 @@
|
||||
"""Main file for bot."""
|
||||
|
||||
import os
|
||||
import pathlib
|
||||
|
||||
import nextcord
|
||||
from nextcord.ext import commands
|
||||
@@ -9,9 +9,9 @@ from dakiny_bot.classes.nominate_highcouncil_views import NominateHighCouncilVie
|
||||
from dakiny_bot.classes.nominate_views import NominateView
|
||||
from dakiny_bot.classes.voting_highcouncil_views import VoteHighcouncilView
|
||||
from dakiny_bot.classes.voting_views import VoteView
|
||||
from dakiny_bot.database import create_database
|
||||
from dakiny_bot.logger import dakiny_logger
|
||||
|
||||
from .DakinySettings import settings
|
||||
from .dakiny_settings import settings
|
||||
|
||||
birthday_list: list[int] = []
|
||||
|
||||
@@ -31,19 +31,25 @@ def run() -> None:
|
||||
bot = commands.Bot(intents=intents)
|
||||
|
||||
# Get the modules of all cogs whose directory structure is ./cogs/<module_name>
|
||||
for folder in os.listdir("dakiny_bot/cogs"):
|
||||
bot.load_extension(f"dakiny_bot.cogs.{folder}")
|
||||
for folder in pathlib.Path("dakiny_bot/cogs").iterdir():
|
||||
bot.load_extension(f"dakiny_bot.cogs.{folder.name}")
|
||||
|
||||
@bot.listen()
|
||||
async def on_ready() -> None:
|
||||
"""When Discord is connected."""
|
||||
assert bot.user is not None # noqa: S101 documentation does this
|
||||
create_database # noqa: B018
|
||||
bot.add_view(NominateView(bot.get_guild(settings.params.guild_id)))
|
||||
bot.add_view(NominateHighCouncilView(bot.get_guild(settings.params.guild_id)))
|
||||
bot.add_view(VoteView(bot.get_guild(settings.params.guild_id)))
|
||||
bot.add_view(VoteHighcouncilView(bot.get_guild(settings.params.guild_id)))
|
||||
print(f"{bot.user.name} has connected to Discord!") # noqa: T201 TODO make logging to print my stuff to console
|
||||
if bot.user is None:
|
||||
dakiny_logger.error("Discord connection failed.")
|
||||
return
|
||||
|
||||
if (guild := bot.get_guild(settings.params.guild_id)) is None:
|
||||
dakiny_logger.error("Could not find Dakiny guild object.")
|
||||
return
|
||||
|
||||
bot.add_view(NominateView(guild))
|
||||
bot.add_view(NominateHighCouncilView(guild))
|
||||
bot.add_view(VoteView(guild))
|
||||
bot.add_view(VoteHighcouncilView(guild))
|
||||
dakiny_logger.info("%s has connected to Discord!", bot.user.name)
|
||||
|
||||
# Run Discord bot
|
||||
bot.run(settings.params.discord_token)
|
||||
|
||||
@@ -9,7 +9,7 @@ from dakiny_bot.classes.nominate_highcouncil_views import NominateHighCouncilVie
|
||||
from dakiny_bot.classes.nominate_views import NominateView
|
||||
from dakiny_bot.classes.voting_highcouncil_views import VoteHighcouncilView
|
||||
from dakiny_bot.classes.voting_views import VoteView
|
||||
from dakiny_bot.DakinySettings import settings
|
||||
from dakiny_bot.dakiny_settings import settings
|
||||
from dakiny_bot.database.sql_data_classes import (
|
||||
CouncilMembers,
|
||||
ElectionInformation,
|
||||
|
||||
@@ -1,11 +1,7 @@
|
||||
"""Contains various views to be used in the high council nomination process."""
|
||||
|
||||
import nextcord
|
||||
from nextcord.interactions import Interaction
|
||||
from sqlalchemy import select
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from dakiny_bot.DakinySettings import settings
|
||||
from dakiny_bot.dakiny_settings import settings
|
||||
from dakiny_bot.database.sql_data_classes import CouncilMembers, engine
|
||||
from dakiny_bot.utils import (
|
||||
NOMINEE_SPLITTER,
|
||||
@@ -13,6 +9,9 @@ from dakiny_bot.utils import (
|
||||
decorate_dm_nomination,
|
||||
get_election_name,
|
||||
)
|
||||
from nextcord.interactions import Interaction
|
||||
from sqlalchemy import select
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
|
||||
class NominateDMModal(nextcord.ui.Modal):
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
"""Contains various views to be used in the nomination process."""
|
||||
|
||||
import nextcord
|
||||
from dakiny_bot.dakiny_settings import settings
|
||||
from dakiny_bot.database.sql_data_classes import CouncilMembers, engine
|
||||
from dakiny_bot.utils import NOMINEE_SPLITTER, decorate_nomination, get_election_name
|
||||
from nextcord.interactions import Interaction
|
||||
from sqlalchemy import select
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from dakiny_bot.DakinySettings import settings
|
||||
from dakiny_bot.database.sql_data_classes import CouncilMembers, engine
|
||||
from dakiny_bot.utils import NOMINEE_SPLITTER, decorate_nomination, get_election_name
|
||||
|
||||
|
||||
class NominateModal(nextcord.ui.Modal):
|
||||
"""
|
||||
|
||||
@@ -1,12 +1,7 @@
|
||||
"""Contains various views to be used while voting for high council. Controls the logic when performing the vote."""
|
||||
|
||||
import nextcord
|
||||
from nextcord import SelectOption
|
||||
from nextcord.interactions import Interaction
|
||||
from sqlalchemy import exc, select, update
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from dakiny_bot.DakinySettings import settings
|
||||
from dakiny_bot.dakiny_settings import settings
|
||||
from dakiny_bot.database.sql_data_classes import (
|
||||
CouncilMembers,
|
||||
ElectionInformation,
|
||||
@@ -14,6 +9,10 @@ from dakiny_bot.database.sql_data_classes import (
|
||||
engine,
|
||||
)
|
||||
from dakiny_bot.utils import VoteType, build_highcouncil_votes_str, get_election_name
|
||||
from nextcord import SelectOption
|
||||
from nextcord.interactions import Interaction
|
||||
from sqlalchemy import exc, select, update
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
|
||||
class VoteSelect(nextcord.ui.StringSelect):
|
||||
|
||||
@@ -1,12 +1,7 @@
|
||||
"""Contains various views to be used while voting. Controls the logic when performing the vote."""
|
||||
|
||||
import nextcord
|
||||
from nextcord import SelectOption
|
||||
from nextcord.interactions import Interaction
|
||||
from sqlalchemy import exc, select, update
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from dakiny_bot.DakinySettings import settings
|
||||
from dakiny_bot.dakiny_settings import settings
|
||||
from dakiny_bot.database.sql_data_classes import (
|
||||
CouncilMembers,
|
||||
ElectionInformation,
|
||||
@@ -14,6 +9,10 @@ from dakiny_bot.database.sql_data_classes import (
|
||||
engine,
|
||||
)
|
||||
from dakiny_bot.utils import VoteType, build_votes_str, get_election_name
|
||||
from nextcord import SelectOption
|
||||
from nextcord.interactions import Interaction
|
||||
from sqlalchemy import exc, select, update
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
|
||||
class VoteSelect(nextcord.ui.StringSelect):
|
||||
|
||||
@@ -10,7 +10,7 @@ from git.exc import GitCommandError
|
||||
from nextcord.ext import commands
|
||||
|
||||
from dakiny_bot.classes.gitea_webhook import GiteaWebhook
|
||||
from dakiny_bot.DakinySettings import settings
|
||||
from dakiny_bot.dakiny_settings import settings
|
||||
from dakiny_bot.logger import dakiny_logger
|
||||
from dakiny_bot.utils import REPO_DIR, edit_clan_council_info, update_clan_messages
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ import nextcord
|
||||
from discord import TextInputStyle
|
||||
from nextcord.ext import commands
|
||||
|
||||
from dakiny_bot.DakinySettings import settings
|
||||
from dakiny_bot.dakiny_settings import settings
|
||||
from dakiny_bot.utils import GUILDS, MAX_DISCORD_MESSAGE_LENGTH, PointType, record_points
|
||||
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ import nextcord
|
||||
from nextcord.ext import commands
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from dakiny_bot.DakinySettings import settings
|
||||
from dakiny_bot.dakiny_settings import settings
|
||||
from dakiny_bot.database.sql_data_classes import Presences, engine
|
||||
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
import nextcord
|
||||
from nextcord.ext import commands
|
||||
|
||||
from dakiny_bot.DakinySettings import settings
|
||||
from dakiny_bot.dakiny_settings import settings
|
||||
from dakiny_bot.utils import GUILDS
|
||||
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ from nextcord.ext import application_checks, commands
|
||||
|
||||
from dakiny_bot.classes.election import Election
|
||||
from dakiny_bot.cogs.loops import daily_loop
|
||||
from dakiny_bot.DakinySettings import settings
|
||||
from dakiny_bot.dakiny_settings import settings
|
||||
from dakiny_bot.utils import GUILDS, get_active_election_cycle, get_quarter_name
|
||||
|
||||
ME = 206602713511886849
|
||||
|
||||
@@ -11,7 +11,7 @@ from sqlalchemy.orm import Session
|
||||
|
||||
from dakiny_bot.app import birthday_list
|
||||
from dakiny_bot.classes.election import Election
|
||||
from dakiny_bot.DakinySettings import settings
|
||||
from dakiny_bot.dakiny_settings import settings
|
||||
from dakiny_bot.database.sql_data_classes import UserBirthday, engine
|
||||
from dakiny_bot.logger import dakiny_logger
|
||||
from dakiny_bot.utils import get_active_election_cycle
|
||||
|
||||
@@ -83,4 +83,5 @@ class DakinySettings(YAMLWizard):
|
||||
self.to_yaml_file(CONFIG_LOCATION)
|
||||
|
||||
|
||||
settings = DakinySettings.from_yaml_file(CONFIG_LOCATION)
|
||||
tmp = DakinySettings.from_yaml_file(CONFIG_LOCATION)
|
||||
settings: DakinySettings = tmp[0] if isinstance(tmp, list) else tmp
|
||||
+1
-1
@@ -22,7 +22,7 @@ from dakiny_bot.database.sql_data_classes import (
|
||||
)
|
||||
from dakiny_bot.logger import dakiny_logger
|
||||
|
||||
from .DakinySettings import settings
|
||||
from .dakiny_settings import settings
|
||||
|
||||
NOMINEE_SPLITTER = "========================================\n\n"
|
||||
REPO_DIR = "./dakiny-messages"
|
||||
|
||||
Reference in New Issue
Block a user