aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsalmonik <salmonik@tuta.io>2026-11-04 01:32:21 +0100
committersalmonik <salmonik@tuta.io>2026-11-04 01:32:21 +0100
commit1584c921eb8900b160275401cb8e15e72fdbf273 (patch)
treea95db5555f48f90128441a6942dcf945667549a5
parentweb: percent-encode UTF-8 query bytes (diff)
downloadsenator-sperma-1584c921eb8900b160275401cb8e15e72fdbf273.tar.gz
senator-sperma-1584c921eb8900b160275401cb8e15e72fdbf273.zip
leaderboard: use competition ranks consistently
-rw-r--r--src/commands/leaderboard.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/commands/leaderboard.rs b/src/commands/leaderboard.rs
index 94d67d1..5b79360 100644
--- a/src/commands/leaderboard.rs
+++ b/src/commands/leaderboard.rs
@@ -142,7 +142,14 @@ async fn create_leaderboard_embed(
142 142
143 let mut description = String::new(); 143 let mut description = String::new();
144 for (i, entry) in entries.iter().enumerate() { 144 for (i, entry) in entries.iter().enumerate() {
145 let rank = offset + i as i64 + 1; 145 // Use the same competition ranking as `/leaderboard me` so tied
146 // users show the same number in both views.
147 let fallback = offset + i as i64 + 1;
148 let rank = match database::get_user_rank(&ctx.data().db_pool, &entry.user_id, metric).await
149 {
150 Ok(rank) if rank > 0 => rank,
151 _ => fallback,
152 };
146 let display_name = resolve_display_name(ctx, &entry.user_id).await; 153 let display_name = resolve_display_name(ctx, &entry.user_id).await;
147 154
148 let value = match metric { 155 let value = match metric {