Last active 2 weeks ago

nuno revised this gist 2 weeks ago. Go to revision

1 file changed, 20 insertions

gistfile1.txt(file created)

@@ -0,0 +1,20 @@
1 + async update({ weekKey }: { weekKey?: string } = {}): Promise<void> {
2 + const client = DiscordClient.get();
3 + const channelId = Config.get({ section: "channels", key: "leaderboard" });
4 + if (!channelId) { log.warn("leaderboard channel not configured"); return; }
5 +
6 + const week = weekKey ? WRank.weekFromKey(weekKey) : WRank.currentWeek();
7 + const embed = buildLeaderboardEmbed();
8 +
9 + if (!week) { log.warn(`Week ${weekKey} not found`); return; }
10 +
11 + await PersistentMessage.post({
12 + store: "leaderboard",
13 + key: week.weekKey,
14 + channelId,
15 + embeds: [embed],
16 + client,
17 + });
18 +
19 + log.info(`Leaderboard updated for ${week.weekKey}`);
20 + },
Newer Older