Skip to content

Commit 13e8c38

Browse files
committed
fix checkkarma
1 parent a0c5ed2 commit 13e8c38

1 file changed

Lines changed: 10 additions & 18 deletions

File tree

cogs/event.py

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1022,25 +1022,17 @@ async def checkkarma(self, ctx, user: discord.User = None):
10221022

10231023
karma = await self.__get_karma(user)
10241024
async with self.bot.session as session:
1025-
attended_count = await session.scalar(
1026-
select(func.count())
1027-
.select_from(models.event.EventMultipliers)
1028-
.where(
1029-
models.event.EventMultipliers.user_id == user.id,
1030-
models.event.EventMultipliers.attended.is_(True),
1025+
recent_records = (
1026+
await session.execute(
1027+
select(models.event.EventMultipliers)
1028+
.where(models.event.EventMultipliers.user_id == user.id)
1029+
.order_by(models.event.EventMultipliers.timestamp.desc())
1030+
.limit(4)
10311031
)
1032-
.limit(4)
1033-
)
1034-
missed_count = await session.scalar(
1035-
select(func.count())
1036-
.select_from(models.event.EventMultipliers)
1037-
.where(
1038-
models.event.EventMultipliers.user_id == user.id,
1039-
models.event.EventMultipliers.voted_for_winner.is_(True),
1040-
models.event.EventMultipliers.attended.is_(False),
1041-
)
1042-
.limit(4)
1043-
)
1032+
).scalars().all()
1033+
1034+
attended_count = sum(1 for r in recent_records if r.attended)
1035+
missed_count = sum(1 for r in recent_records if r.voted_for_winner and not r.attended)
10441036
await ctx.send(
10451037
f"Out of the last 4 events, {user.name} attended {attended_count} and missed {missed_count}. They have {karma} voting karma."
10461038
)

0 commit comments

Comments
 (0)