class StravaTT::TimeTrial

Attributes

end_time[R]
segment_id[R]
start_time[R]

Public Class Methods

new(segment_id, start_time, end_time) click to toggle source
# File lib/stravatt/time_trial.rb, line 5
def initialize segment_id, start_time, end_time
  @segment_id = segment_id
  @start_time = start_time
  @end_time   = end_time
end

Public Instance Methods

leaderboard(users) click to toggle source
# File lib/stravatt/time_trial.rb, line 11
def leaderboard users
  leaderboard = Leaderboard.new

  users.each do |user|
    raise TypeError.new unless user.is_a? User
    effort = first_effort_for user
    if effort
      leaderboard.add user.id, effort
    end
  end

  leaderboard.sort
end

Private Instance Methods

first_effort_for(user) click to toggle source
# File lib/stravatt/time_trial.rb, line 27
def first_effort_for user
  finder = EffortFinder.new user.access_token, start_time, end_time, segment_id
  finder.find_first
end