Sha256: ae1abadd6aed4354edee13ac90890dc4dbf50879cecd839b3128976ce027b4a7
Contents?: true
Size: 1.15 KB
Versions: 5
Compression:
Stored size: 1.15 KB
Contents
module Convert module Converters def youtube_image(string, options = {}) options = { :width => 320, :height => 315, :style => 'medium', :target => 'blank', :border => '0' }.merge(options) styles = { 'default' => 'default', 'high' => 'hqdefault', 'medium' => 'mqdefault', 'normal' => 'sddefault', 'max' => 'maxresdefault' } @regex = /(https?:\/\/)?(www.)?(youtube\.com\/watch\?v=|youtu\.be\/|youtube\.com\/watch\?feature=player_embedded&v=)([A-Za-z0-9_-]*)(\&\S+)?(\?\S+)?/ string.gsub(@regex) do youtube_id = $4 video_url = "https://www.youtube.com/watch?v=#{youtube_id}" target = options[:target] width = options[:width] height = options[:height] border = options[:border] style = styles[options[:style]] rescue styles['default'] src = "//img.youtube.com/vi/#{youtube_id}/#{style}.jpg" %{<div class="thumbnail youtube"><a href="#{video_url}" target="_#{target}"><img src="#{src}" width="#{width}" height="#{height}" border="#{border}"></a></div>} end end end end
Version data entries
5 entries across 5 versions & 1 rubygems