class QuarantineLiveStreams::Event

Attributes

date[RW]
genre[RW]
name[RW]
time[RW]

Public Class Methods

all() click to toggle source
# File lib/QuarantineLiveStreams/event.rb, line 26
def self.all
    @@all
end
all_dates_array() click to toggle source
# File lib/QuarantineLiveStreams/event.rb, line 64
def self.all_dates_array
    @@all_dates_array
end
all_genres_array() click to toggle source
# File lib/QuarantineLiveStreams/event.rb, line 87
def self.all_genres_array
    @@all_genres_array
end
create_dates_array() click to toggle source
# File lib/QuarantineLiveStreams/event.rb, line 43
def self.create_dates_array
    @@all_dates_array = QuarantineLiveStreams::Event.all.map do |event_obj|
        event_obj.date
    end

    @@all_dates_array = @@all_dates_array.uniq
end
create_from_collection(events_array = nil) click to toggle source
# File lib/QuarantineLiveStreams/event.rb, line 18
def self.create_from_collection(events_array = nil)
    # Nicer way to allow for an argument with a default that's complex.
    events_array ||= QuarantineLiveStreams::Scraper.scrape_npr
    events_array.each do |event_hash|
     self.new(event_hash)
    end
end
create_genres_array() click to toggle source
# File lib/QuarantineLiveStreams/event.rb, line 79
def self.create_genres_array
    @@all_genres_array = QuarantineLiveStreams::Event.all.map do |event_obj|
        event_obj.genre
    end

    @@all_genres_array = @@all_genres_array.uniq
end
display_all_dates() click to toggle source
# File lib/QuarantineLiveStreams/event.rb, line 38
def self.display_all_dates
    self.create_dates_array
    self.print_dates
end
display_all_event_names() click to toggle source
# File lib/QuarantineLiveStreams/event.rb, line 57
def self.display_all_event_names
    # This sounds like it should be part of the Event class...
    self.all.each_with_index do |event_obj, index|
        puts "#{index + 1}. #{event_obj.name}"
    end
end
display_all_genres() click to toggle source
# File lib/QuarantineLiveStreams/event.rb, line 68
def  self.display_all_genres
    self.create_genres_array
    self.print_genres
end
display_by_date(date) click to toggle source
# File lib/QuarantineLiveStreams/event.rb, line 34
def self.display_by_date(date)
    @@events_by_date = QuarantineLiveStreams::Event.all.map {|e| e.date == date}
end
find_by_genre(genre) click to toggle source
# File lib/QuarantineLiveStreams/event.rb, line 30
def self.find_by_genre(genre)
    @@events_by_genre = QuarantineLiveStreams::Event.all.map{|e| e.genre == genre}
end
new(event_hash) click to toggle source
# File lib/QuarantineLiveStreams/event.rb, line 9
def initialize(event_hash)
    @date = event_hash[:date]
    @genre = event_hash[:genre]
    @name = event_hash[:name]
    @time = event_hash[:time]
    @link = event_hash[:link]
    @@all << self
end
print_dates() click to toggle source
print_genres() click to toggle source