2021-05-28 20:40:30 +08:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
module Onebox
|
|
|
|
module Engine
|
|
|
|
class AnimatedImageOnebox
|
|
|
|
include Engine
|
|
|
|
include StandardEmbed
|
|
|
|
|
|
|
|
matches_regexp(%r{^https?://.*(giphy\.com|gph\.is|tenor\.com)/})
|
|
|
|
always_https
|
|
|
|
|
|
|
|
def to_html
|
|
|
|
og = get_opengraph
|
2021-05-29 03:10:32 +08:00
|
|
|
if og.image
|
|
|
|
"<img src='#{og.image}' width='#{og.image_width}' height='#{og.image_height}' class='animated onebox' #{og.title_attr}>"
|
|
|
|
else
|
|
|
|
escaped_url = ::Onebox::Helpers.normalize_url_for_output(@url)
|
|
|
|
"<img src='#{escaped_url}' class='animated onebox'>"
|
|
|
|
end
|
2021-05-28 20:40:30 +08:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|