From 3c5888fa40d75e3ec3a7a6371802f3684e9dfbf6 Mon Sep 17 00:00:00 2001 From: ellielle <40385743+ellielle@users.noreply.github.com> Date: Tue, 18 Jun 2024 08:59:47 -0400 Subject: [PATCH] update stats page with links to user profiles and leaderboard page --- frontend/src/components/content/Stats.svelte | 90 +++++++++++++++----- 1 file changed, 69 insertions(+), 21 deletions(-) diff --git a/frontend/src/components/content/Stats.svelte b/frontend/src/components/content/Stats.svelte index b5e3719..16ef7a5 100644 --- a/frontend/src/components/content/Stats.svelte +++ b/frontend/src/components/content/Stats.svelte @@ -5,6 +5,8 @@ TopDailyLearners, GlobalStats, } from "../../../wailsjs/go/main/App.js"; + import { User } from "../../stores/user.js"; + import { prevent_default } from "svelte/internal"; // Holds the top 30 discord karma leaderboard users let archons = []; @@ -13,21 +15,6 @@ // Holds the top 30 leaderboard users let leaders = []; - // skeletonUI color palette numbers, reversed so I don't have to do anything - // funky in the HTML - const skeletonUINum = [ - "900", - "800", - "700", - "600", - "500", - "400", - "300", - "200", - "100", - "50", - ]; - // Because separating the keys with regex is worse const generalStats = { LessonCompletions: "Lessons Completed", @@ -56,10 +43,24 @@ GlobalStats().then((result) => (stats = result)); } + function openBrowserLink(url) { + //@ts-ignore + window.runtime.BrowserOpenURL(url); + } + onMount(() => { getTopDailyStats(); getTopCommunity(); getGlobalStats(); + + const refreshInterval = setInterval(() => { + getTopDailyStats(); + getGlobalStats(); + }, 600); + + return () => { + clearInterval(refreshInterval); + }; }); // TODO: split arcanum stats and leaderboard stats into their own components with refresh timers @@ -68,7 +69,16 @@
-

Archon Leaderboard

+ { + e.preventDefault(); + openBrowserLink("https://www.boot.dev/leaderboard"); + }} + > +

Archon Leaderboard

+
-

Daily Leaderboard

+ { + e.preventDefault(); + openBrowserLink("https://www.boot.dev/leaderboard"); + }} + > +

Daily Leaderboard

+