|
|
@@ -39,11 +39,11 @@
|
|
|
collect (case stars (1 "☆") (2 "★") (t " • ")))))
|
|
|
|
|
|
(defun format-leaderboard (json)
|
|
|
- (let ((sorted (sort (loop for (uid . member) in (subseq (agets json "members") 0 +max-people+)
|
|
|
- collect (list (agets member "name")
|
|
|
- (agets member "local_score")
|
|
|
- (format-stars (agets member "completion_day_level"))))
|
|
|
- #'> :key #'second)))
|
|
|
+ (let ((sorted (subseq (sort (loop for (uid . member) in (agets json "members")
|
|
|
+ collect (list (agets member "name")
|
|
|
+ (agets member "local_score")
|
|
|
+ (format-stars (agets member "completion_day_level"))))
|
|
|
+ #'> :key #'second) 0 +max-people+)))
|
|
|
(format nil "🏆***Fridach AoC Leaderboard***🏆~%~a~%~%~{~a. ~a: ~a ~% ~a~^~%~}" +leader-board-link+
|
|
|
(apply 'append (mapcar #'cons (alexandria:iota (length sorted) :start 1) sorted)))))
|
|
|
|