class RescueTimeApi::Response

Attributes

response[RW]

Public Class Methods

new(response) click to toggle source
# File lib/rescue_time_api/response.rb, line 11
def initialize(response)
  @response = response
end

Public Instance Methods

key_mapping() click to toggle source
# File lib/rescue_time_api/response.rb, line 32
def key_mapping
  {
    "Person" => 'person',
    "Rank" => 'rank',
    "Time Spent (seconds)" => 'seconds',
    "Number of People" => 'people',
    "Activity" => 'activity',
    "Category" => 'category',
    "Productivity" => 'productivity',
    "Date" => "date"
  }
end
map_row(row) click to toggle source
# File lib/rescue_time_api/response.rb, line 23
def map_row(row)
  mapped = Hash[row_headers.zip(row)]
  mapped['date'] = DateTime.parse(mapped['date']) if mapped['date']
  ['second','rank','people','productivity'].each do |key|
    mapped[key] = mapped[key].to_i if mapped[key]
  end
  mapped
end
row_headers() click to toggle source
# File lib/rescue_time_api/response.rb, line 15
def row_headers
  @row_headers ||= body['row_headers'].map { |row_name| key_mapping[row_name] }
end
rows() click to toggle source
# File lib/rescue_time_api/response.rb, line 19
def rows
  @rows ||= body["rows"].map { |row| map_row(row) }
end