Class: Onebox::Engine::RedditMediaOnebox
- Inherits:
-
Object
- Object
- Onebox::Engine::RedditMediaOnebox
- Includes:
- Onebox::Engine, StandardEmbed
- Defined in:
- lib/onebox/engine/reddit_media_onebox.rb
Constant Summary
Constants included from Onebox::Engine
Instance Attribute Summary
Attributes included from Onebox::Engine
#errors, #options, #timeout, #uri, #url
Instance Method Summary collapse
Methods included from StandardEmbed
add_oembed_provider, add_opengraph_provider, #always_https?, oembed_providers, opengraph_providers, #raw
Methods included from Onebox::Engine
all_iframe_origins, engines, included, #initialize, origins_to_regexes, #placeholder_html
Instance Method Details
#to_html ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/onebox/engine/reddit_media_onebox.rb', line 11 def to_html if raw[:type] == "image" <<-HTML <aside class="onebox reddit"> <header class="source"> <img src="#{raw[:favicon]}" class="site-icon" width="16" height="16"> <a href="#{raw[:url]}" target="_blank" rel="nofollow ugc noopener">#{raw[:site_name]}</a> </header> <article class="onebox-body"> <h3><a href="#{raw[:url]}" target="_blank" rel="nofollow ugc noopener">#{raw[:title]}</a></h3> <div class="scale-images"> <img src="#{raw[:image]}" class="scale-image"/> </div> <div class="description"><p>#{raw[:description]}</p></div> </article> </aside> HTML elsif raw[:type] =~ /^video[\/\.]/ <<-HTML <aside class="onebox reddit"> <header class="source"> <img src="#{raw[:favicon]}" class="site-icon" width="16" height="16"> <a href="#{raw[:url]}" target="_blank" rel="nofollow ugc noopener">#{raw[:site_name]}</a> </header> <article class="onebox-body"> <h3><a href="#{raw[:url]}" target="_blank" rel="nofollow ugc noopener">#{raw[:title]}</a></h3> <div class="aspect-image-full-size"> <a href="#{raw[:url]}" target="_blank" rel="nofollow ugc noopener"> <img src="#{raw[:image]}" class="scale-image"/> <span class="instagram-video-icon"></span> </a> </div> <div class="description"><p>#{raw[:description]}</p></div> </article> </aside> HTML else html = Onebox::Engine::AllowlistedGenericOnebox.new(@url, @timeout).to_html return if Onebox::Helpers.blank?(html) html end end |