class Lita::Handlers::OnewheelGarfield

Public Instance Methods

get_garfield_for_date(date, username) click to toggle source
# File lib/lita/handlers/onewheel_garfield.rb, line 50
def get_garfield_for_date(date, username)
  redis.set(username, date)
  "https://d1ejxu6vysztl5.cloudfront.net/comics/garfield/#{date.year}/#{date.year}-#{zero_prefix date.month}-#{zero_prefix date.day}.gif"
end
get_garfield_for_today(username) click to toggle source
# File lib/lita/handlers/onewheel_garfield.rb, line 45
def get_garfield_for_today(username)
  date = Date.today
  get_garfield_for_date(date, username)
end
handle_default_garfield(response) click to toggle source
# File lib/lita/handlers/onewheel_garfield.rb, line 69
def handle_default_garfield(response)
  response.reply get_garfield_for_today response.user.name
end
handle_first_garfield(response) click to toggle source
# File lib/lita/handlers/onewheel_garfield.rb, line 73
def handle_first_garfield(response)
  date = Date.civil(1978, 6, 19)
  response.reply get_garfield_for_date(date, response.user.name)
end
handle_mdy_garfield(response) click to toggle source
# File lib/lita/handlers/onewheel_garfield.rb, line 87
def handle_mdy_garfield(response)
  date = Date.civil(response.match_data[3].to_i, response.match_data[1].to_i, response.match_data[2].to_i)
  response.reply get_garfield_for_date(date, response.user.name)
end
handle_next_garfield(response) click to toggle source
# File lib/lita/handlers/onewheel_garfield.rb, line 92
def handle_next_garfield(response)
  date = Date.parse redis.get(response.user.name)
  unless date == Date.today
    date += 1
  end
  response.reply get_garfield_for_date(date, response.user.name)
end
handle_prev_garfield(response) click to toggle source
# File lib/lita/handlers/onewheel_garfield.rb, line 100
def handle_prev_garfield(response)
  date = Date.parse redis.get(response.user.name)
  unless date == Date.civil(1978, 6, 19)
    date -= 1
  end
  response.reply get_garfield_for_date(date, response.user.name)
end
handle_random_garfield(response) click to toggle source
# File lib/lita/handlers/onewheel_garfield.rb, line 63
def handle_random_garfield(response)
  # get a random date between 1978-06-19 and now
  date = rand(Date.civil(1978, 6, 19)..Date.today())
  response.reply get_garfield_for_date(date, response.user.name)
end
handle_today_garfield(response) click to toggle source
# File lib/lita/handlers/onewheel_garfield.rb, line 78
def handle_today_garfield(response)
  response.reply get_garfield_for_today response.user.name
end
handle_ymd_garfield(response) click to toggle source
# File lib/lita/handlers/onewheel_garfield.rb, line 82
def handle_ymd_garfield(response)
  date = Date.civil(response.match_data[1].to_i, response.match_data[2].to_i, response.match_data[3].to_i)
  response.reply get_garfield_for_date(date, response.user.name)
end
zero_prefix(dat) click to toggle source
# File lib/lita/handlers/onewheel_garfield.rb, line 55
def zero_prefix(dat)
  if dat.to_i < 10
    "0#{dat}"
  else
    dat
  end
end