From 36c84d7f802ab7b9fb70538e4b5cdb7be374ec5d Mon Sep 17 00:00:00 2001 From: Ryan Moser Date: Sun, 2 Dec 2012 17:15:06 -0500 Subject: [PATCH] Panda + Tiger --- db/seed.rb | 4 ++++ models/show.rb | 2 +- watchman.rb | 25 +++++++++++++++++++++++-- 3 files changed, 28 insertions(+), 3 deletions(-) diff --git a/db/seed.rb b/db/seed.rb index 3c028ff..dbde513 100644 --- a/db/seed.rb +++ b/db/seed.rb @@ -3,5 +3,9 @@ Show.delete_all amc = Network.create(name: "AMC") nbc = Network.create(name: "NBC") +sho = Network.create(name: "Showtime") +fox = Network.create(name: "Fox") Show.create(name: "Mad Men", day_of_week: "Sunday", hour_of_day: 22, network: amc) Show.create(name: "Community", day_of_week: "Thursday", hour_of_day: 20, network: nbc) +Show.create(name: "Homeland", day_of_week: "Sunday", hour_of_day: 22, network: sho) +Show.create(name: "Fringe", day_of_week: "Friday", hour_of_day: 21, network: fox) \ No newline at end of file diff --git a/models/show.rb b/models/show.rb index 6c82f65..55b0692 100644 --- a/models/show.rb +++ b/models/show.rb @@ -4,6 +4,6 @@ class Show < ActiveRecord::Base validates_presence_of :name def to_s - "#{name} airs at #{hour_of_day}:#{day_of_week}:00 on #{network} " + "#{name} airs on #{day_of_week} at #{hour_of_day}:00 on #{network} " end end diff --git a/watchman.rb b/watchman.rb index ebe9be4..073f8d2 100644 --- a/watchman.rb +++ b/watchman.rb @@ -1,5 +1,6 @@ require 'rubygems' require 'bundler/setup' +require 'date' require "./db/setup" Dir.glob('./models/*').each { |r| require r} @@ -7,9 +8,29 @@ puts "There are #{Show.count} in the database" +def ask_user_for_valid_day_of_week + user_date = gets.chomp.capitalize + days_of_the_week = Date::DAYNAMES + count = 0 + max_number_of_tries = 2 + while days_of_the_week.index(user_date).nil? && count < max_number_of_tries + puts "That is not a valid day of the week. Please try again." + user_date = gets.chomp.capitalize + count += 1 + end + if count == max_number_of_tries + user_date = days_of_the_week[Time.new.wday] + puts "No valid date entered, giving shows for today (#{user_date})" + end + user_date +end + +puts "What day of the week do you want to watch shows?" +day_of_interest = ask_user_for_valid_day_of_week + Network.all.each do |network| puts "Shows airing on #{network}" network.shows.each do |show| - puts show + puts show if show.day_of_week == day_of_interest end -end +end \ No newline at end of file