class StravaTT::Leaderboard
Attributes
store[R]
Public Class Methods
new()
click to toggle source
# File lib/stravatt/leaderboard.rb, line 5 def initialize @store = {} end
Public Instance Methods
add(user_id, effort)
click to toggle source
# File lib/stravatt/leaderboard.rb, line 9 def add user_id, effort store[user_id] = effort end
sort()
click to toggle source
# File lib/stravatt/leaderboard.rb, line 13 def sort results = store.sort do |(a_id, a_effort), (b_id, b_effort)| return a unless b_effort return b unless a_effort a_effort.moving_time <=> b_effort.moving_time end results.map do |(id, effort)| { user_id: id, effort: effort } end end