class Screencast

Constants

URL

Attributes

image[R]
title[R]

Public Class Methods

all() click to toggle source
# File lib/peepcode.rb, line 8
def self.all 
  i = 0 
  screencasts = []
  count = self.titles.length
  while i < count
    sc = Screencast.new( titles[i], image_urls[i], links[i] ) 
    screencasts << sc
    i += 1
  end 
  screencasts.collect(&:to_json) 
end
new(title, image, link) click to toggle source
# File lib/peepcode.rb, line 30
def initialize(title, image, link) 
  @title = title
  @image = image
  @link = link
end

Private Class Methods

doc() click to toggle source
# File lib/peepcode.rb, line 36
def self.doc
  @doc ||= Nokogiri::HTML(open URL)
end
image_urls() click to toggle source
# File lib/peepcode.rb, line 44
def self.image_urls 
  @image_urls ||= doc.css('.covers img').collect{|i| "https://peepcode.com" + i.attributes['src'] }
end
titles() click to toggle source
# File lib/peepcode.rb, line 40
def self.titles
  @titles ||= doc.css('.covers img').collect{|i| i.attributes['src'].value.split("/")[-1].split(".")[0].split("-").collect(&:capitalize).join(' ') }
end

Public Instance Methods

to_json() click to toggle source
# File lib/peepcode.rb, line 20
def to_json 
  {   
    title: @title,
    image: @image,
    link: @link
  }   
end