class Ruboty::Handlers::SlideMe

Public Instance Methods

slide_me(message) click to toggle source
# File lib/ruboty/handlers/slide_me.rb, line 9
def slide_me(message)
  message.reply(slide_message)
rescue => e
  message.reply(e.message)
end

Private Instance Methods

html() click to toggle source
# File lib/ruboty/handlers/slide_me.rb, line 21
def html
  OpenURI.open_uri(url).read
end
slide_message() click to toggle source
# File lib/ruboty/handlers/slide_me.rb, line 35
def slide_message
  slides.map {|slide|
    indent = slide.keys.map(&:to_s).map(&:size).max
    slide.map {|k,v| "%-#{indent}s: #{v}" % k }.join($/)
  }.join($/ * 2)
end
slides() click to toggle source
# File lib/ruboty/handlers/slide_me.rb, line 25
def slides
  Nokogiri::HTML(html).search('tr').drop(1).map {|tr|
    {
      url:    tr.css('td')[1].at_css('a')['href'],
      text:   tr.css('td')[1].text,
      hatebu: tr.css('td')[3].text.to_i
    }
  }
end
url() click to toggle source
# File lib/ruboty/handlers/slide_me.rb, line 17
def url
  "http://slidegate.herokuapp.com/#{Time.now.strftime("%Y/%m/%d")}"
end