class Conference
Attributes
event_count[RW]
events[RW]
name[RW]
Public Class Methods
all()
click to toggle source
# File lib/get_freaky/conference.rb, line 28 def self.all conferences = get("/conferences.json") conference_names = conferences.collect{|c| c["name"]} end
create_slug(title)
click to toggle source
# File lib/get_freaky/conference.rb, line 45 def self.create_slug(title) title. downcase. # we cannot use slugify method below, one conference name has `:` char which must exist in url name (slug) gsub(/[ ._]/, "-"). gsub(/([|])/) { |match| CGI.escape(match) } end
find(name)
click to toggle source
# File lib/get_freaky/conference.rb, line 12 def self.find(name) slug = create_slug(name) response = get("/conferences/#{slug}.json") if response.not_found? NullConference.new("No conference was found with that name") elsif response.success? self.new( response["name"], response["event_count"], response["events"] ) else raise response.status end end
new(name, event_count, events)
click to toggle source
# File lib/get_freaky/conference.rb, line 6 def initialize(name, event_count, events) self.name = name self.event_count = event_count self.events = events end
Public Instance Methods
event_list()
click to toggle source
# File lib/get_freaky/conference.rb, line 33 def event_list if valid? events.map { |event| event["short_code"] } else "There was no conference found by that name." end end
valid?()
click to toggle source
# File lib/get_freaky/conference.rb, line 41 def valid? true end