Sha256: 485628973073dd794b9741e5b9d4ca1d859374123f8b3a8578adf10b7acb8d86

Contents?: true

Size: 749 Bytes

Versions: 3

Compression:

Stored size: 749 Bytes

Contents

module Onebox
  module Engine
    class SimplecastOnebox
      include Engine
      include StandardEmbed

      matches_regexp(/https?:\/\/(.+)?simplecast.com\/(episodes|s)\/.*/)
      always_https

      def to_html
        get_oembed.html
      end

      def placeholder_html
        oembed = get_oembed
        return if Onebox::Helpers.blank?(oembed.thumbnail_url)
        "<img src='#{oembed.thumbnail_url}' #{oembed.title_attr}>"
      end

      private

      def get_oembed_url
        if id = url.scan(/\A.*?-([a-zA-Z0-9]*)\Z/).flatten.first
          oembed_url = "https://simplecast.com/s/#{id}"
        else
          oembed_url = url
        end

        "https://simplecast.com/oembed?url=#{oembed_url}"
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
onebox-1.8.89 lib/onebox/engine/simplecast_onebox.rb
onebox-1.8.88 lib/onebox/engine/simplecast_onebox.rb
onebox-1.8.87 lib/onebox/engine/simplecast_onebox.rb