fix (stats): Fix global guild goal fetch.
This commit is contained in:
@@ -15,12 +15,11 @@ async def get_goals_card(
|
|||||||
):
|
):
|
||||||
data: StatsData = bot.get_cog('StatsCog').data
|
data: StatsData = bot.get_cog('StatsCog').data
|
||||||
|
|
||||||
if guildid:
|
lion = await bot.core.lions.fetch_member(guildid or 0, userid)
|
||||||
lion = await bot.core.lions.fetch_member(guildid, userid)
|
|
||||||
user = await lion.fetch_member()
|
|
||||||
luser = lion.luser
|
luser = lion.luser
|
||||||
|
if guildid:
|
||||||
|
user = await lion.fetch_member()
|
||||||
else:
|
else:
|
||||||
lion = luser = await bot.core.lions.fetch_user(userid)
|
|
||||||
user = await bot.fetch_user(userid)
|
user = await bot.fetch_user(userid)
|
||||||
|
|
||||||
today = lion.today
|
today = lion.today
|
||||||
@@ -42,7 +41,7 @@ async def get_goals_card(
|
|||||||
key = {'guildid': guildid or 0, 'userid': userid, 'monthid': periodid}
|
key = {'guildid': guildid or 0, 'userid': userid, 'monthid': periodid}
|
||||||
|
|
||||||
# Extract goals and tasks
|
# Extract goals and tasks
|
||||||
goals = await goal_model.fetch_or_create(*key.values())
|
goals = await goal_model.fetch(*key.values())
|
||||||
task_rows = await tasks_model.fetch_where(**key)
|
task_rows = await tasks_model.fetch_where(**key)
|
||||||
tasks = [(i, row.content, bool(row.completed)) for i, row in enumerate(task_rows)]
|
tasks = [(i, row.content, bool(row.completed)) for i, row in enumerate(task_rows)]
|
||||||
|
|
||||||
|
|||||||
@@ -427,12 +427,12 @@ class WeeklyMonthlyUI(StatsUI):
|
|||||||
goal_model = self.data.WeeklyGoals
|
goal_model = self.data.WeeklyGoals
|
||||||
tasks_model = self.data.WeeklyTasks
|
tasks_model = self.data.WeeklyTasks
|
||||||
weekid = extract_weekid(apply_week_offset(now, self._week_offset))
|
weekid = extract_weekid(apply_week_offset(now, self._week_offset))
|
||||||
key = {'guildid': self.guildid, 'userid': self.userid, 'weekid': weekid}
|
key = {'guildid': self.guildid or 0, 'userid': self.userid, 'weekid': weekid}
|
||||||
else:
|
else:
|
||||||
goal_model = self.data.MonthlyGoals
|
goal_model = self.data.MonthlyGoals
|
||||||
tasks_model = self.data.MonthlyTasks
|
tasks_model = self.data.MonthlyTasks
|
||||||
monthid = extract_monthid(apply_month_offset(now, self._month_offset))
|
monthid = extract_monthid(apply_month_offset(now, self._month_offset))
|
||||||
key = {'guildid': self.guildid, 'userid': self.userid, 'monthid': monthid}
|
key = {'guildid': self.guildid or 0, 'userid': self.userid, 'monthid': monthid}
|
||||||
|
|
||||||
if self._stat_page.stat is StatType.VOICE:
|
if self._stat_page.stat is StatType.VOICE:
|
||||||
goal_keys = ('task_goal', 'study_goal')
|
goal_keys = ('task_goal', 'study_goal')
|
||||||
@@ -744,13 +744,13 @@ class WeeklyMonthlyUI(StatsUI):
|
|||||||
goal_model = data.WeeklyGoals
|
goal_model = data.WeeklyGoals
|
||||||
tasks_model = data.WeeklyTasks
|
tasks_model = data.WeeklyTasks
|
||||||
weekid = extract_weekid(apply_week_offset(now, self._week_offset))
|
weekid = extract_weekid(apply_week_offset(now, self._week_offset))
|
||||||
key = {'guildid': self.guildid, 'userid': self.userid, 'weekid': weekid}
|
key = {'guildid': self.guildid or 0, 'userid': self.userid, 'weekid': weekid}
|
||||||
else:
|
else:
|
||||||
goal_model = data.MonthlyGoals
|
goal_model = data.MonthlyGoals
|
||||||
tasks_model = data.MonthlyTasks
|
tasks_model = data.MonthlyTasks
|
||||||
now = now.replace(day=1) # Ensures a valid date after applying month offset
|
now = now.replace(day=1) # Ensures a valid date after applying month offset
|
||||||
monthid = extract_monthid(apply_month_offset(now, self._month_offset))
|
monthid = extract_monthid(apply_month_offset(now, self._month_offset))
|
||||||
key = {'guildid': self.guildid, 'userid': self.userid, 'monthid': monthid}
|
key = {'guildid': self.guildid or 0, 'userid': self.userid, 'monthid': monthid}
|
||||||
|
|
||||||
if self._stat_page.stat is StatType.VOICE:
|
if self._stat_page.stat is StatType.VOICE:
|
||||||
goal_keys = ('task_goal', 'study_goal')
|
goal_keys = ('task_goal', 'study_goal')
|
||||||
@@ -774,7 +774,7 @@ class WeeklyMonthlyUI(StatsUI):
|
|||||||
mode = CardMode.VOICE
|
mode = CardMode.VOICE
|
||||||
elif stat_page.stat is StatType.TEXT:
|
elif stat_page.stat is StatType.TEXT:
|
||||||
mode = CardMode.TEXT
|
mode = CardMode.TEXT
|
||||||
elif stat_page.stats is StatType.ANKI:
|
elif stat_page.stat is StatType.ANKI:
|
||||||
mode = CardMode.ANKI
|
mode = CardMode.ANKI
|
||||||
|
|
||||||
card = await get_goals_card(
|
card = await get_goals_card(
|
||||||
|
|||||||
Reference in New Issue
Block a user