Compare commits
4
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fb8dfef55e | ||
|
|
487d174b6d | ||
|
|
abb50d71b4 | ||
|
|
7409e2fd2d |
Vendored
+4
-1
@@ -9,7 +9,10 @@
|
|||||||
"type": "debugpy",
|
"type": "debugpy",
|
||||||
"request": "launch",
|
"request": "launch",
|
||||||
"module": "dakiny_bot",
|
"module": "dakiny_bot",
|
||||||
"justMyCode": true
|
"justMyCode": true,
|
||||||
|
"env": {
|
||||||
|
"DEBUG": "true"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import nextcord
|
|||||||
from nextcord.ext import application_checks, commands
|
from nextcord.ext import application_checks, commands
|
||||||
|
|
||||||
from dakiny_bot.classes.election import Election
|
from dakiny_bot.classes.election import Election
|
||||||
|
from dakiny_bot.cogs.loops import daily_loop
|
||||||
from dakiny_bot.DakinySettings import settings
|
from dakiny_bot.DakinySettings import settings
|
||||||
from dakiny_bot.utils import GUILDS, get_active_election_cycle, get_quarter_name
|
from dakiny_bot.utils import GUILDS, get_active_election_cycle, get_quarter_name
|
||||||
|
|
||||||
@@ -119,11 +120,8 @@ class TestCog(commands.Cog, name="Test commands."):
|
|||||||
Args:
|
Args:
|
||||||
interaction (nextcord.Interaction): Interaction with the message.
|
interaction (nextcord.Interaction): Interaction with the message.
|
||||||
"""
|
"""
|
||||||
cycle = Election(
|
dl = daily_loop.DailyLoop(self.bot)
|
||||||
get_active_election_cycle(),
|
await dl.daily_loop()
|
||||||
self.bot.get_guild(settings.params.guild_id),
|
|
||||||
)
|
|
||||||
await cycle.check_date()
|
|
||||||
await interaction.send("Test command sent.", ephemeral=True)
|
await interaction.send("Test command sent.", ephemeral=True)
|
||||||
|
|
||||||
@test.subcommand()
|
@test.subcommand()
|
||||||
|
|||||||
@@ -44,10 +44,10 @@ class DailyLoop(commands.Cog, name="Daily Loop"):
|
|||||||
an active election, runs the check_date() function for the election to perform actions. Finally checks if the
|
an active election, runs the check_date() function for the election to perform actions. Finally checks if the
|
||||||
election is over to delete the current election object.
|
election is over to delete the current election object.
|
||||||
"""
|
"""
|
||||||
dakiny_logger.debug("Daily loop.")
|
dakiny_logger.debug("Daily loop. Current election: %s.", self.current_election)
|
||||||
if self.current_election is None:
|
if self.current_election is None:
|
||||||
self.current_election = self.get_election()
|
self.current_election = self.get_election()
|
||||||
dakiny_logger.debug("Current election: %s", self.current_election)
|
dakiny_logger.debug("Current election: %s.", self.current_election)
|
||||||
|
|
||||||
if self.current_election is not None:
|
if self.current_election is not None:
|
||||||
await self.current_election.check_date()
|
await self.current_election.check_date()
|
||||||
@@ -81,9 +81,11 @@ class DailyLoop(commands.Cog, name="Daily Loop"):
|
|||||||
Election: Current election cycle, None if there is no election happening.
|
Election: Current election cycle, None if there is no election happening.
|
||||||
"""
|
"""
|
||||||
cycle = get_active_election_cycle()
|
cycle = get_active_election_cycle()
|
||||||
|
dakiny_logger.debug("Current cycle: %s.", cycle)
|
||||||
|
|
||||||
# prevent exception from using cycle as an Int in an array
|
# prevent exception from using cycle as an Int in an array
|
||||||
if cycle is None:
|
if cycle is None:
|
||||||
|
dakiny_logger.info("Cycle was None. Returning without an election.")
|
||||||
return None
|
return None
|
||||||
|
|
||||||
election = Election(cycle, self.bot.get_guild(settings.params.guild_id))
|
election = Election(cycle, self.bot.get_guild(settings.params.guild_id))
|
||||||
|
|||||||
@@ -7,5 +7,7 @@ import sys
|
|||||||
dakiny_logger = logging.getLogger("default")
|
dakiny_logger = logging.getLogger("default")
|
||||||
dakiny_logger.setLevel(logging.DEBUG if os.getenv("DEBUG") == "true" else logging.INFO)
|
dakiny_logger.setLevel(logging.DEBUG if os.getenv("DEBUG") == "true" else logging.INFO)
|
||||||
handler = logging.StreamHandler(sys.stdout)
|
handler = logging.StreamHandler(sys.stdout)
|
||||||
handler.setFormatter(logging.Formatter("%(asctime)s:%(levelname)s:%(name)s: %(message)s"))
|
handler.setFormatter(
|
||||||
|
logging.Formatter("%(asctime)s:%(levelname)s [%(filename)s:%(lineno)s - %(funcName)20s() ] %(message)s")
|
||||||
|
)
|
||||||
dakiny_logger.addHandler(handler)
|
dakiny_logger.addHandler(handler)
|
||||||
|
|||||||
+7
-5
@@ -35,20 +35,20 @@ VoteType = StrEnum("VoteType", ["COUNCIL", "DISCORDMANAGER", "CLANLEADER"])
|
|||||||
PointType = StrEnum("PointType", ["CLAN", "EVENT"])
|
PointType = StrEnum("PointType", ["CLAN", "EVENT"])
|
||||||
|
|
||||||
|
|
||||||
def get_datetime(day: str) -> datetime:
|
def get_datetime(month_day: str) -> datetime:
|
||||||
"""
|
"""
|
||||||
Takes in a string month and day and returns a datetime object of that Month/Day this year.
|
Takes in a string month and day and returns a datetime object of that Month/Day this year.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
day (str): Month/Day in that format.
|
month_day (str): Month/Day in that format.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
datetime: Datetime representation of Month/Day.
|
datetime: Datetime representation of Month/Day.
|
||||||
"""
|
"""
|
||||||
today = datetime.now(tz=UTC).date()
|
today = datetime.now(tz=UTC).date()
|
||||||
year = today.year
|
year = today.year
|
||||||
month = int(day.split("/")[0])
|
month = int(month_day.split("/")[0])
|
||||||
day = int(day.split("/")[1])
|
day = int(month_day.split("/")[1])
|
||||||
|
|
||||||
# ensure that year rolls over if current month is December and the next month is less than 12.
|
# ensure that year rolls over if current month is December and the next month is less than 12.
|
||||||
if today.month == calendar.DECEMBER and month < calendar.OCTOBER:
|
if today.month == calendar.DECEMBER and month < calendar.OCTOBER:
|
||||||
@@ -56,8 +56,10 @@ def get_datetime(day: str) -> datetime:
|
|||||||
|
|
||||||
if today.month == calendar.JANUARY and month > calendar.MARCH:
|
if today.month == calendar.JANUARY and month > calendar.MARCH:
|
||||||
year -= 1
|
year -= 1
|
||||||
|
try:
|
||||||
return datetime(year, month, day, tzinfo=UTC)
|
return datetime(year, month, day, tzinfo=UTC)
|
||||||
|
except ValueError:
|
||||||
|
dakiny_logger.warning("Invalid month day: %s.", month_day)
|
||||||
|
|
||||||
|
|
||||||
def get_election_name() -> str:
|
def get_election_name() -> str:
|
||||||
|
|||||||
Reference in New Issue
Block a user