discourse/lib/oneboxer/youtube_onebox.rb
Claus Strasburger 109c10c883 YoutubeOnebox: FIX HTTP-specific URLs
by replacing with protocol-agnostic URLs.
This fixes the mixed-content warning for secure instances of discourse, at least for Youtube
2013-10-09 20:43:59 +02:00

15 lines
496 B
Ruby

require_dependency 'oneboxer/oembed_onebox'
module Oneboxer
class YoutubeOnebox < OembedOnebox
matcher /^https?:\/\/(?:www\.)?(?:youtube\.com|youtu\.be)\/.+$/
def oembed_endpoint
"http://www.youtube.com/oembed?url=#{BaseOnebox.uriencode(@url.sub('https://', 'http://'))}&format=json"
end
def onebox
# Youtube allows HTTP and HTTPS, so replace them with the protocol-agnostic variant
super.each { |entry| BaseOnebox.replace_agnostic entry }
end
end
end