lib/onebox/engine/soundcloud_onebox.rb in onebox-1.8.79 vs lib/onebox/engine/soundcloud_onebox.rb in onebox-1.8.80
- old
+ new
@@ -6,29 +6,25 @@
matches_regexp(/^https?:\/\/soundcloud\.com/)
always_https
def to_html
- oembed_data[:html].gsub('visual=true', 'visual=false')
+ oembed = get_oembed
+ oembed.html.gsub('visual=true', 'visual=false')
end
def placeholder_html
- return if Onebox::Helpers.blank?(oembed_data[:thumbnail_url])
- escaped_src = ::Onebox::Helpers.normalize_url_for_output(oembed_data[:thumbnail_url])
- "<img src='#{escaped_src}' #{Helpers.title_attr(oembed_data)}>"
+ oembed = get_oembed
+ return if Onebox::Helpers.blank?(oembed.thumbnail_url)
+ "<img src='#{oembed.thumbnail_url}' #{oembed.title_attr}>"
end
- private
+ protected
- def oembed_data
- @oembed_data ||= begin
- oembed_url = "https://soundcloud.com/oembed.json?url=#{url}"
- oembed_url << "&maxheight=166" unless url["/sets/"]
- response = Onebox::Helpers.fetch_response(oembed_url) rescue "{}"
- Onebox::Helpers.symbolize_keys(::MultiJson.load(response))
- rescue
- {}
- end
+ def get_oembed_url
+ oembed_url = "https://soundcloud.com/oembed.json?url=#{url}"
+ oembed_url << "&maxheight=166" unless url["/sets/"]
+ oembed_url
end
end
end
end