Sha256: 2d449c5119f332ac55a3c2370c3378ef557b03478ef6a40d9291a38e91bd86ae

Contents?: true

Size: 745 Bytes

Versions: 1

Compression:

Stored size: 745 Bytes

Contents

require "lita"
require 'open-uri'
require 'nokogiri'

module Lita
  module Handlers
    class RedditImagePreview < Handler

      route %r{reddit.com/r/}i, :reddit_image_preview, command: false

      def reddit_image_preview(response)
        html = open(response.message.body, 'User-Agent' => 'lita')
        doc = Nokogiri::HTML(html.read)
        if doc.css('img.media-element').length > 0
          response.reply doc.css('img.media-element')[0].attr('src')
        else
          div = doc.css("div[data-test-id=post-content]")

          if div.children[3].css("a")[0]
          	response.reply div.children[3].css("a")[0].attr('href')
          end
        end
      end

    end

    Lita.register_handler(RedditImagePreview)
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
lita-reddit-image-preview-1.0.4 lib/lita/handlers/reddit_image_preview.rb