current election cycle shoud return quarter cycle if it can't find a cycle.
This commit is contained in:
@@ -28,7 +28,7 @@ from utils import (
|
|||||||
get_cl_election_name,
|
get_cl_election_name,
|
||||||
get_datetime,
|
get_datetime,
|
||||||
get_dm_election_name,
|
get_dm_election_name,
|
||||||
get_election_cycle_name,
|
get_election_name,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -199,7 +199,7 @@ class ElectionCycle:
|
|||||||
parent: nextcord.TextChannel = self.guild.get_channel(
|
parent: nextcord.TextChannel = self.guild.get_channel(
|
||||||
self.config.params.voting_parent_id
|
self.config.params.voting_parent_id
|
||||||
)
|
)
|
||||||
quarter_name: str = get_election_cycle_name(self.config)
|
quarter_name: str = get_election_name(self.config)
|
||||||
|
|
||||||
thread_msg: nextcord.Message = await parent.send(content=quarter_name)
|
thread_msg: nextcord.Message = await parent.send(content=quarter_name)
|
||||||
|
|
||||||
@@ -247,8 +247,7 @@ class ElectionCycle:
|
|||||||
|
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
stmt = select(ElectionInformation).where(
|
stmt = select(ElectionInformation).where(
|
||||||
ElectionInformation.ElectionCycle
|
ElectionInformation.ElectionCycle == get_election_name(self.config)
|
||||||
== get_election_cycle_name(self.config)
|
|
||||||
)
|
)
|
||||||
info = session.scalar(stmt)
|
info = session.scalar(stmt)
|
||||||
info.CouncilVoteMsgId = vote_msg.id
|
info.CouncilVoteMsgId = vote_msg.id
|
||||||
@@ -277,7 +276,7 @@ class ElectionCycle:
|
|||||||
message, view=NominateHighCouncilView(self.config, self.guild)
|
message, view=NominateHighCouncilView(self.config, self.guild)
|
||||||
)
|
)
|
||||||
|
|
||||||
election_name = get_election_cycle_name(self.config)
|
election_name = get_election_name(self.config)
|
||||||
|
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
# remove vote button from vote message
|
# remove vote button from vote message
|
||||||
@@ -333,8 +332,7 @@ class ElectionCycle:
|
|||||||
|
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
stmt = select(ElectionInformation).where(
|
stmt = select(ElectionInformation).where(
|
||||||
ElectionInformation.ElectionCycle
|
ElectionInformation.ElectionCycle == get_election_name(self.config)
|
||||||
== get_election_cycle_name(self.config)
|
|
||||||
)
|
)
|
||||||
info = session.scalar(stmt)
|
info = session.scalar(stmt)
|
||||||
info.HighCouncilVoteMsgId = vote_msg.id
|
info.HighCouncilVoteMsgId = vote_msg.id
|
||||||
@@ -364,9 +362,7 @@ class ElectionCycle:
|
|||||||
# role management
|
# role management
|
||||||
stmt = (
|
stmt = (
|
||||||
select(CouncilMembers.MemberId)
|
select(CouncilMembers.MemberId)
|
||||||
.where(
|
.where(CouncilMembers.ElectionCycle == get_election_name(self.config))
|
||||||
CouncilMembers.ElectionCycle == get_election_cycle_name(self.config)
|
|
||||||
)
|
|
||||||
.where(CouncilMembers.Elected == true())
|
.where(CouncilMembers.Elected == true())
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -390,7 +386,7 @@ class ElectionCycle:
|
|||||||
stmt = select(Votes.VotedForId).where(Votes.ElectionCycle == cl_election)
|
stmt = select(Votes.VotedForId).where(Votes.ElectionCycle == cl_election)
|
||||||
cl_votes = collections.Counter(session.scalars(stmt))
|
cl_votes = collections.Counter(session.scalars(stmt))
|
||||||
|
|
||||||
election_cycle = get_election_cycle_name(self.config)
|
election_cycle = get_election_name(self.config)
|
||||||
try:
|
try:
|
||||||
dm_winner = max(dm_votes, key=dm_votes.get)
|
dm_winner = max(dm_votes, key=dm_votes.get)
|
||||||
stmt = (
|
stmt = (
|
||||||
@@ -422,7 +418,7 @@ class ElectionCycle:
|
|||||||
|
|
||||||
# clear view from vote message
|
# clear view from vote message
|
||||||
stmt = select(ElectionInformation.HighCouncilVoteMsgId).where(
|
stmt = select(ElectionInformation.HighCouncilVoteMsgId).where(
|
||||||
ElectionInformation.ElectionCycle == get_election_cycle_name(self.config)
|
ElectionInformation.ElectionCycle == get_election_name(self.config)
|
||||||
)
|
)
|
||||||
vote_msg_id = session.scalar(stmt)
|
vote_msg_id = session.scalar(stmt)
|
||||||
vote_msg: nextcord.Message = await election_thread.fetch_message(vote_msg_id)
|
vote_msg: nextcord.Message = await election_thread.fetch_message(vote_msg_id)
|
||||||
@@ -451,8 +447,7 @@ class ElectionCycle:
|
|||||||
|
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
stmt = select(ElectionInformation).where(
|
stmt = select(ElectionInformation).where(
|
||||||
ElectionInformation.ElectionCycle
|
ElectionInformation.ElectionCycle == get_election_name(self.config)
|
||||||
== get_election_cycle_name(self.config)
|
|
||||||
)
|
)
|
||||||
return session.scalar(stmt)
|
return session.scalar(stmt)
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ from utils import (
|
|||||||
NOMINEE_SPLITTER,
|
NOMINEE_SPLITTER,
|
||||||
decorate_cl_nomination,
|
decorate_cl_nomination,
|
||||||
decorate_dm_nomination,
|
decorate_dm_nomination,
|
||||||
get_election_cycle_name,
|
get_election_name,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -60,7 +60,7 @@ class NominateDMModal(nextcord.ui.Modal):
|
|||||||
|
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
# user already in table
|
# user already in table
|
||||||
cycle = get_election_cycle_name(self.config)
|
cycle = get_election_name(self.config)
|
||||||
stmt = (
|
stmt = (
|
||||||
select(CouncilMembers)
|
select(CouncilMembers)
|
||||||
.where(CouncilMembers.ElectionCycle == cycle)
|
.where(CouncilMembers.ElectionCycle == cycle)
|
||||||
@@ -127,7 +127,7 @@ class NominateCLModal(nextcord.ui.Modal):
|
|||||||
|
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
# user already in table
|
# user already in table
|
||||||
cycle = get_election_cycle_name(self.config)
|
cycle = get_election_name(self.config)
|
||||||
stmt = (
|
stmt = (
|
||||||
select(CouncilMembers)
|
select(CouncilMembers)
|
||||||
.where(CouncilMembers.ElectionCycle == cycle)
|
.where(CouncilMembers.ElectionCycle == cycle)
|
||||||
@@ -189,7 +189,7 @@ class NominateHighCouncilView(nextcord.ui.View):
|
|||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
cycle = get_election_cycle_name(self.config)
|
cycle = get_election_name(self.config)
|
||||||
usr_nominated = False
|
usr_nominated = False
|
||||||
speech_content = ""
|
speech_content = ""
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
@@ -242,7 +242,7 @@ class NominateHighCouncilView(nextcord.ui.View):
|
|||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
cycle = get_election_cycle_name(self.config)
|
cycle = get_election_name(self.config)
|
||||||
usr_nominated = False
|
usr_nominated = False
|
||||||
speech_content = ""
|
speech_content = ""
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ from sqlalchemy.orm import Session
|
|||||||
|
|
||||||
from config import DakinyConfig
|
from config import DakinyConfig
|
||||||
from database_setup.sql_data_classes import CouncilMembers, engine
|
from database_setup.sql_data_classes import CouncilMembers, engine
|
||||||
from utils import NOMINEE_SPLITTER, decorate_nomination, get_election_cycle_name
|
from utils import NOMINEE_SPLITTER, decorate_nomination, get_election_name
|
||||||
|
|
||||||
|
|
||||||
class NominateModal(nextcord.ui.Modal):
|
class NominateModal(nextcord.ui.Modal):
|
||||||
@@ -58,7 +58,7 @@ class NominateModal(nextcord.ui.Modal):
|
|||||||
msg = await interaction.channel.send(speech)
|
msg = await interaction.channel.send(speech)
|
||||||
|
|
||||||
council_member = CouncilMembers(
|
council_member = CouncilMembers(
|
||||||
ElectionCycle=get_election_cycle_name(self.config),
|
ElectionCycle=get_election_name(self.config),
|
||||||
MemberId=interaction.user.id,
|
MemberId=interaction.user.id,
|
||||||
SpeechMsgId=msg.id,
|
SpeechMsgId=msg.id,
|
||||||
)
|
)
|
||||||
@@ -66,7 +66,7 @@ class NominateModal(nextcord.ui.Modal):
|
|||||||
session.commit()
|
session.commit()
|
||||||
else:
|
else:
|
||||||
# user already nominated, just need to update the election speech
|
# user already nominated, just need to update the election speech
|
||||||
cycle = get_election_cycle_name(self.config)
|
cycle = get_election_name(self.config)
|
||||||
stmt = (
|
stmt = (
|
||||||
select(CouncilMembers)
|
select(CouncilMembers)
|
||||||
.where(CouncilMembers.ElectionCycle == cycle)
|
.where(CouncilMembers.ElectionCycle == cycle)
|
||||||
@@ -120,7 +120,7 @@ class NominateView(nextcord.ui.View):
|
|||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
cycle = get_election_cycle_name(self.config)
|
cycle = get_election_name(self.config)
|
||||||
usr_nominated = False
|
usr_nominated = False
|
||||||
speech_content = ""
|
speech_content = ""
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ from utils import (
|
|||||||
build_highcouncil_votes_str,
|
build_highcouncil_votes_str,
|
||||||
get_cl_election_name,
|
get_cl_election_name,
|
||||||
get_dm_election_name,
|
get_dm_election_name,
|
||||||
get_election_cycle_name,
|
get_election_name,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -49,7 +49,7 @@ class VoteSelect(nextcord.ui.StringSelect):
|
|||||||
# should never happen
|
# should never happen
|
||||||
raise ValueError('election type was not "cl" or "dm"')
|
raise ValueError('election type was not "cl" or "dm"')
|
||||||
|
|
||||||
cycle: str = get_election_cycle_name(self.config)
|
cycle: str = get_election_name(self.config)
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
stmt = select(ElectionInformation.HighCouncilVoteMsgId).where(
|
stmt = select(ElectionInformation.HighCouncilVoteMsgId).where(
|
||||||
ElectionInformation.ElectionCycle == cycle
|
ElectionInformation.ElectionCycle == cycle
|
||||||
@@ -135,7 +135,7 @@ class VoteHighcouncilView(nextcord.ui.View):
|
|||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
cycle: str = get_election_cycle_name(self.config)
|
cycle: str = get_election_name(self.config)
|
||||||
election: str = get_cl_election_name(self.config)
|
election: str = get_cl_election_name(self.config)
|
||||||
|
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
@@ -154,9 +154,11 @@ class VoteHighcouncilView(nextcord.ui.View):
|
|||||||
|
|
||||||
options = [
|
options = [
|
||||||
SelectOption(
|
SelectOption(
|
||||||
label=f"{self.guild.get_member(nominee).display_name} ☑️"
|
label=(
|
||||||
|
f"{self.guild.get_member(nominee).display_name} ☑️"
|
||||||
if voted_for == nominee
|
if voted_for == nominee
|
||||||
else f"{self.guild.get_member(nominee).display_name}",
|
else f"{self.guild.get_member(nominee).display_name}"
|
||||||
|
),
|
||||||
value=str(nominee),
|
value=str(nominee),
|
||||||
)
|
)
|
||||||
for nominee in sorted(
|
for nominee in sorted(
|
||||||
@@ -211,7 +213,7 @@ class VoteHighcouncilView(nextcord.ui.View):
|
|||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
cycle: str = get_election_cycle_name(self.config)
|
cycle: str = get_election_name(self.config)
|
||||||
election: str = get_dm_election_name(self.config)
|
election: str = get_dm_election_name(self.config)
|
||||||
|
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
@@ -230,9 +232,11 @@ class VoteHighcouncilView(nextcord.ui.View):
|
|||||||
|
|
||||||
options = [
|
options = [
|
||||||
SelectOption(
|
SelectOption(
|
||||||
label=f"{self.guild.get_member(nominee).display_name} ☑️"
|
label=(
|
||||||
|
f"{self.guild.get_member(nominee).display_name} ☑️"
|
||||||
if voted_for == nominee
|
if voted_for == nominee
|
||||||
else f"{self.guild.get_member(nominee).display_name}",
|
else f"{self.guild.get_member(nominee).display_name}"
|
||||||
|
),
|
||||||
value=str(nominee),
|
value=str(nominee),
|
||||||
)
|
)
|
||||||
for nominee in sorted(
|
for nominee in sorted(
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ from database_setup.sql_data_classes import (
|
|||||||
Votes,
|
Votes,
|
||||||
engine,
|
engine,
|
||||||
)
|
)
|
||||||
from utils import build_votes_str, get_election_cycle_name
|
from utils import build_votes_str, get_election_name
|
||||||
|
|
||||||
|
|
||||||
class VoteSelect(nextcord.ui.StringSelect):
|
class VoteSelect(nextcord.ui.StringSelect):
|
||||||
@@ -31,7 +31,7 @@ class VoteSelect(nextcord.ui.StringSelect):
|
|||||||
self.config = config
|
self.config = config
|
||||||
|
|
||||||
async def callback(self, interaction: Interaction):
|
async def callback(self, interaction: Interaction):
|
||||||
election_name = get_election_cycle_name(self.config)
|
election_name = get_election_name(self.config)
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
stmt = select(ElectionInformation.CouncilVoteMsgId).where(
|
stmt = select(ElectionInformation.CouncilVoteMsgId).where(
|
||||||
ElectionInformation.ElectionCycle == election_name
|
ElectionInformation.ElectionCycle == election_name
|
||||||
@@ -114,7 +114,7 @@ class VoteView(nextcord.ui.View):
|
|||||||
)
|
)
|
||||||
return
|
return
|
||||||
|
|
||||||
election: str = get_election_cycle_name(self.config)
|
election: str = get_election_name(self.config)
|
||||||
|
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
stmt = (
|
stmt = (
|
||||||
@@ -130,9 +130,11 @@ class VoteView(nextcord.ui.View):
|
|||||||
|
|
||||||
options = [
|
options = [
|
||||||
SelectOption(
|
SelectOption(
|
||||||
label=f"{self.guild.get_member(nominee).display_name} ☑️"
|
label=(
|
||||||
|
f"{self.guild.get_member(nominee).display_name} ☑️"
|
||||||
if voted_for == nominee
|
if voted_for == nominee
|
||||||
else f"{self.guild.get_member(nominee).display_name}",
|
else f"{self.guild.get_member(nominee).display_name}"
|
||||||
|
),
|
||||||
value=str(nominee),
|
value=str(nominee),
|
||||||
)
|
)
|
||||||
for nominee in sorted(
|
for nominee in sorted(
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ def get_datetime(day: str) -> datetime:
|
|||||||
return datetime(year, month, day)
|
return datetime(year, month, day)
|
||||||
|
|
||||||
|
|
||||||
def get_election_cycle_name(config: DakinyConfig) -> str:
|
def get_election_name(config: DakinyConfig) -> str:
|
||||||
"""
|
"""
|
||||||
Builds the unique name of the current election cycle
|
Builds the unique name of the current election cycle
|
||||||
|
|
||||||
@@ -65,7 +65,7 @@ def get_election_cycle_name(config: DakinyConfig) -> str:
|
|||||||
return f"vote-{get_datetime(current_cycle.term_start).year}-{current_cycle.name}"
|
return f"vote-{get_datetime(current_cycle.term_start).year}-{current_cycle.name}"
|
||||||
|
|
||||||
|
|
||||||
def get_cycle_name(config: DakinyConfig) -> str:
|
def get_quarter_name(config: DakinyConfig) -> str:
|
||||||
"""
|
"""
|
||||||
Builds the name of the current cycle/quarter
|
Builds the name of the current cycle/quarter
|
||||||
|
|
||||||
@@ -76,7 +76,7 @@ def get_cycle_name(config: DakinyConfig) -> str:
|
|||||||
str: the name of the cycle.
|
str: the name of the cycle.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
cycle = get_current_cycle(config)
|
cycle = get_quarter_cycle(config)
|
||||||
current_cycle = config.election_cycles[cycle]
|
current_cycle = config.election_cycles[cycle]
|
||||||
|
|
||||||
return f"{get_datetime(current_cycle.term_start).year}-{current_cycle.name}"
|
return f"{get_datetime(current_cycle.term_start).year}-{current_cycle.name}"
|
||||||
@@ -93,7 +93,7 @@ def get_dm_election_name(config: DakinyConfig) -> str:
|
|||||||
str: the name of the election
|
str: the name of the election
|
||||||
"""
|
"""
|
||||||
|
|
||||||
return f"{get_election_cycle_name(config)}-dm"
|
return f"{get_election_name(config)}-dm"
|
||||||
|
|
||||||
|
|
||||||
def get_cl_election_name(config: DakinyConfig) -> str:
|
def get_cl_election_name(config: DakinyConfig) -> str:
|
||||||
@@ -107,7 +107,7 @@ def get_cl_election_name(config: DakinyConfig) -> str:
|
|||||||
str: the name of the election
|
str: the name of the election
|
||||||
"""
|
"""
|
||||||
|
|
||||||
return f"{get_election_cycle_name(config)}-cl"
|
return f"{get_election_name(config)}-cl"
|
||||||
|
|
||||||
|
|
||||||
def get_current_election_cycle(config: DakinyConfig) -> int:
|
def get_current_election_cycle(config: DakinyConfig) -> int:
|
||||||
@@ -130,10 +130,11 @@ def get_current_election_cycle(config: DakinyConfig) -> int:
|
|||||||
):
|
):
|
||||||
return cycle
|
return cycle
|
||||||
|
|
||||||
return None
|
# It isn't a current election, get the quarter
|
||||||
|
return get_quarter_cycle(config)
|
||||||
|
|
||||||
|
|
||||||
def get_current_cycle(config: DakinyConfig) -> int:
|
def get_quarter_cycle(config: DakinyConfig) -> int:
|
||||||
"""
|
"""
|
||||||
Returns the index for the current cycle/quarter. Defined as between term start and end. Shouldn't return none
|
Returns the index for the current cycle/quarter. Defined as between term start and end. Shouldn't return none
|
||||||
|
|
||||||
@@ -171,7 +172,7 @@ def build_votes_str(config: DakinyConfig, guild: nextcord.Guild) -> str:
|
|||||||
|
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
stmt = select(CouncilMembers).where(
|
stmt = select(CouncilMembers).where(
|
||||||
CouncilMembers.ElectionCycle == get_election_cycle_name(config)
|
CouncilMembers.ElectionCycle == get_election_name(config)
|
||||||
)
|
)
|
||||||
|
|
||||||
for nominee in sorted(
|
for nominee in sorted(
|
||||||
@@ -180,9 +181,7 @@ def build_votes_str(config: DakinyConfig, guild: nextcord.Guild) -> str:
|
|||||||
):
|
):
|
||||||
votes[nominee.MemberId] = 0
|
votes[nominee.MemberId] = 0
|
||||||
|
|
||||||
stmt = select(Votes).where(
|
stmt = select(Votes).where(Votes.ElectionCycle == get_election_name(config))
|
||||||
Votes.ElectionCycle == get_election_cycle_name(config)
|
|
||||||
)
|
|
||||||
|
|
||||||
for vote in session.scalars(stmt):
|
for vote in session.scalars(stmt):
|
||||||
if vote.VotedForId is not None:
|
if vote.VotedForId is not None:
|
||||||
@@ -212,7 +211,7 @@ def build_highcouncil_votes_str(config: DakinyConfig, guild: nextcord.Guild) ->
|
|||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
stmt = (
|
stmt = (
|
||||||
select(CouncilMembers)
|
select(CouncilMembers)
|
||||||
.where(CouncilMembers.ElectionCycle == get_election_cycle_name(config))
|
.where(CouncilMembers.ElectionCycle == get_election_name(config))
|
||||||
.filter(CouncilMembers.ClanLeaderSpeechId.is_not(None))
|
.filter(CouncilMembers.ClanLeaderSpeechId.is_not(None))
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -230,7 +229,7 @@ def build_highcouncil_votes_str(config: DakinyConfig, guild: nextcord.Guild) ->
|
|||||||
|
|
||||||
stmt = (
|
stmt = (
|
||||||
select(CouncilMembers)
|
select(CouncilMembers)
|
||||||
.where(CouncilMembers.ElectionCycle == get_election_cycle_name(config))
|
.where(CouncilMembers.ElectionCycle == get_election_name(config))
|
||||||
.filter(CouncilMembers.DiscordManagerSpeechId.is_not(None))
|
.filter(CouncilMembers.DiscordManagerSpeechId.is_not(None))
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -338,7 +337,7 @@ def record_event_participation(config: DakinyConfig, users: list[str], is_member
|
|||||||
is_member (bool): whether the users are a discord member or not
|
is_member (bool): whether the users are a discord member or not
|
||||||
"""
|
"""
|
||||||
|
|
||||||
cycle = get_cycle_name(config)
|
cycle = get_quarter_name(config)
|
||||||
participation_point_value = config.params.event_participate_points
|
participation_point_value = config.params.event_participate_points
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
for user in users:
|
for user in users:
|
||||||
@@ -372,7 +371,7 @@ def record_event_host(config: DakinyConfig, user: int):
|
|||||||
config (DakinyConfig): Dakiny config for getting points
|
config (DakinyConfig): Dakiny config for getting points
|
||||||
user (int): Id of user that hosted.
|
user (int): Id of user that hosted.
|
||||||
"""
|
"""
|
||||||
cycle = get_cycle_name(config)
|
cycle = get_quarter_name(config)
|
||||||
host_point_value = config.params.event_host_points
|
host_point_value = config.params.event_host_points
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
stmt = (
|
stmt = (
|
||||||
@@ -545,7 +544,7 @@ async def edit_clan_council_info(guild: nextcord.Guild, config: DakinyConfig):
|
|||||||
config.params.clan_info_channel_id
|
config.params.clan_info_channel_id
|
||||||
)
|
)
|
||||||
|
|
||||||
election = get_election_cycle_name(config)
|
election = get_election_name(config)
|
||||||
with Session(engine) as session:
|
with Session(engine) as session:
|
||||||
stmt = (
|
stmt = (
|
||||||
select(CouncilMembers.MemberId)
|
select(CouncilMembers.MemberId)
|
||||||
@@ -571,7 +570,7 @@ async def edit_clan_council_info(guild: nextcord.Guild, config: DakinyConfig):
|
|||||||
if id not in (discord_manager, clan_leader)
|
if id not in (discord_manager, clan_leader)
|
||||||
]
|
]
|
||||||
|
|
||||||
quarter = get_cycle_name(config)
|
quarter = get_quarter_name(config)
|
||||||
|
|
||||||
with open(
|
with open(
|
||||||
f"{TEMPLATES_DIR}/council_members.txt", mode="r", encoding="utf8"
|
f"{TEMPLATES_DIR}/council_members.txt", mode="r", encoding="utf8"
|
||||||
|
|||||||
Reference in New Issue
Block a user