21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
# File 'lib/sp500_analyzer/cli.rb', line 21
def start
puts "\nWelcome to S&P Analyzer. Please choose from the following menu options:"
puts "\n"
go = ""
until go.downcase == "n"
go = ""
input = ""
puts "\n"
until input.downcase == "q" || (input.to_i >= 1 && input.to_i <= 7)
print "Item No. (or \"q\" to exit): "
input = gets.strip
end
puts "\n"
case input
when "1"
DisplayData.display_points(DataPoint.all)
when "2"
DisplayData.display_yearly
when "3"
valid_year = false
until valid_year == true
print "Enter year: "
year = gets.strip.to_i
valid_year = DisplayData.validate_year(year)
end
DisplayData.display_by_year(year)
when "4"
valid_date = false
until valid_date == true
print "Enter month (mm/yyyy): "
date = gets.strip
valid_date = DisplayData.validate_date(date)
end
DisplayData.extended_info(date)
when "5"
DisplayData.display_max_by_year
when "6"
DisplayData.display_market_crash_info
when "7"
valid_dates = [false,false]
until valid_dates[0] == true
print "Enter first month (mm/yyyy): "
date_1 = gets.strip
valid_dates[0] = DisplayData.validate_date(date_1)
end
until valid_dates[1] == true
print "Enter second month (mm/yyyy): "
date_2 = gets.strip
valid_dates[1] = DisplayData.validate_date(date_2)
end
DisplayData.display_comparison_info(date_1, date_2)
when "q"
go = "n"
end
if go != "n"
puts "\n"
until go.downcase == "y" || go.downcase == "n"
print "Would you like to complete another action? (y/n) "
go = gets.strip
end
puts "\n"
end
end
end
|