class SeClimbingVideos::Video

Attributes

description[RW]
duration[RW]
location[RW]
name[RW]
upload_date[RW]
upload_user[RW]
video_url[RW]

Public Class Methods

all() click to toggle source
# File lib/se_climbing_videos/video.rb, line 22
def self.all
  @@all
end
find(input) click to toggle source
# File lib/se_climbing_videos/video.rb, line 30
def self.find(input)
  self.all[input.to_i-1]
end
new(name=nil, upload_user=nil, duration=nil, video_url=nil, location=nil) click to toggle source
# File lib/se_climbing_videos/video.rb, line 13
def initialize(name=nil, upload_user=nil, duration=nil, video_url=nil, location=nil)
  @name = name
  @upload_user = upload_user
  @duration = duration
  @video_url = video_url
  @location = location
  @@all << self unless @@all.include?(self)
end
new_from_youtube_list(video, location) click to toggle source
# File lib/se_climbing_videos/video.rb, line 7
def self.new_from_youtube_list(video, location)
  self.new(
    video.search("a.yt-uix-tile-link").attr("title").text, video.search("div.yt-lockup-byline").text, video.search("span.accessible-description").text.gsub(" - Duration: ", "").gsub(".", ""), ("https://www.youtube.com" +  video.search("a.yt-uix-tile-link").attr("href").value), location
  )
end
reset() click to toggle source
# File lib/se_climbing_videos/video.rb, line 26
def self.reset
  @@all.clear
end

Public Instance Methods

video_doc() click to toggle source
# File lib/se_climbing_videos/video.rb, line 34
def video_doc
  @video_doc ||= Nokogiri::HTML(open(self.video_url))
end