Class: Humpyard::Assets::YoutubeAsset

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/humpyard/assets/youtube_asset.rb

Instance Method Summary collapse

Instance Method Details

#content_typeObject



19
20
21
# File 'app/models/humpyard/assets/youtube_asset.rb', line 19

def content_type
  'video/youtube'
end

#titleObject



15
16
17
# File 'app/models/humpyard/assets/youtube_asset.rb', line 15

def title
  youtube_title || "YouTube #{youtube_video_id}"
end

#update_youtube_dataObject



23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'app/models/humpyard/assets/youtube_asset.rb', line 23

def update_youtube_data
  begin
    require 'net/http'

    xml = Net::HTTP.get_response(URI.parse("http://gdata.youtube.com/feeds/api/videos/#{youtube_video_id}")).body

    title = xml.force_encoding("UTF-8").scan(/<title.*>(.+?)<\/title>/).first.first
  
    self.youtube_title = title
  rescue
    self.youtube_title = "YouTube #{youtube_video_id}"
  end
end

#urlObject



11
12
13
# File 'app/models/humpyard/assets/youtube_asset.rb', line 11

def url
  "http://www.youtube.com/watch?v=#{youtube_video_id}"
end