class GithubActivity

Attributes

date[R]
json[R]
response[R]

Public Class Methods

new(username, date = Date.today) click to toggle source
# File lib/github_activity.rb, line 8
def initialize(username, date = Date.today)
  @username = username
  @date = date
  @json = RestClient.get("https://github-contributions-api.herokuapp.com/#{@username}/count")
  @response = JSON.parse(@json)
end

Public Instance Methods

last_month() click to toggle source
# File lib/github_activity.rb, line 23
def last_month
end
last_week() click to toggle source
# File lib/github_activity.rb, line 19
def last_week
  get_activity(6)
end
today() click to toggle source
# File lib/github_activity.rb, line 15
def today
  response['data'][date.year.to_s][date.month.to_s][date.day.to_s]
end

Private Instance Methods

get_activity(num_days) click to toggle source
# File lib/github_activity.rb, line 28
def get_activity(num_days)
  ((date - num_days)..date).to_a.sum do |prev_date|
    get_score(prev_date)
  end
end
get_score(prev_date) click to toggle source
# File lib/github_activity.rb, line 34
def get_score(prev_date)
  num = response['data'][prev_date.year.to_s][prev_date.month.to_s][prev_date.day.to_s]
  num.nil? ? 0 : num
end