diff options
author | Thibaut Girka <thib@sitedethib.com> | 2018-11-13 16:28:07 +0100 |
---|---|---|
committer | Thibaut Girka <thib@sitedethib.com> | 2018-11-13 16:28:07 +0100 |
commit | bfe2b9cc501205a07628b59b0a38a8643a4ca11c (patch) | |
tree | 78fa8ee6336dca2719ab0775b81ff98fe34808c6 /app/services/fetch_link_card_service.rb | |
parent | 2fe0cb16239ed86016ebea352425862a561b63a2 (diff) | |
parent | c875f19673e923e7a6e3c2b6656e96b863ca5915 (diff) |
Merge branch 'master' into glitch-soc/merge-upstream
Diffstat (limited to 'app/services/fetch_link_card_service.rb')
-rw-r--r-- | app/services/fetch_link_card_service.rb | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/app/services/fetch_link_card_service.rb b/app/services/fetch_link_card_service.rb index 3e77579bb..38c578de2 100644 --- a/app/services/fetch_link_card_service.rb +++ b/app/services/fetch_link_card_service.rb @@ -136,14 +136,15 @@ class FetchLinkCardService < BaseService detector = CharlockHolmes::EncodingDetector.new detector.strip_tags = true - guess = detector.detect(@html, @html_charset) - page = Nokogiri::HTML(@html, nil, guess&.fetch(:encoding, nil)) + guess = detector.detect(@html, @html_charset) + page = Nokogiri::HTML(@html, nil, guess&.fetch(:encoding, nil)) + player_url = meta_property(page, 'twitter:player') - if meta_property(page, 'twitter:player') + if player_url && !bad_url?(Addressable::URI.parse(player_url)) @card.type = :video @card.width = meta_property(page, 'twitter:player:width') || 0 @card.height = meta_property(page, 'twitter:player:height') || 0 - @card.html = content_tag(:iframe, nil, src: meta_property(page, 'twitter:player'), + @card.html = content_tag(:iframe, nil, src: player_url, width: @card.width, height: @card.height, allowtransparency: 'true', |