Class: ComingSoon::CLI

Inherits:
Object
  • Object
show all
Defined in:
lib/coming_soon/cli.rb

Instance Method Summary collapse

Instance Method Details

#callObject



3
4
5
6
7
# File 'lib/coming_soon/cli.rb', line 3

def call
	get_and_list_movies
	
	menu_selection
end

#get_and_list_moviesObject



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/coming_soon/cli.rb', line 9

def get_and_list_movies
	puts ''
	puts '               **********************'
	puts '               * Movies Coming Soon *'
	puts '               *   --------------   *'
	puts '               *    Please wait!    *'
	puts '               **********************'
	puts ''

	@movies = ComingSoon::Movie.movies

	@movies.each.with_index(1) do |movie, i|
		puts "#{i}. #{movie.name} - #{movie.start_date}"
	end
end

#goodbyeObject



60
61
62
63
64
65
66
67
68
69
70
# File 'lib/coming_soon/cli.rb', line 60

def goodbye
	puts ''
	puts '               *************************'
	puts '               * Thank you and goodbye *'
	puts '               *   -----------------   *'
	puts '               *    Come back soon!    *'
	puts '               *************************'
	puts ''

	exit
end

#list_saved_moviesObject



25
26
27
28
29
30
31
32
33
34
35
# File 'lib/coming_soon/cli.rb', line 25

def list_saved_movies
	puts ''
	puts '               **********************'
	puts '               * Movies Coming Soon *'
	puts '               **********************'
	puts ''

	@movies.each.with_index(1) do |movie, i|
		puts "#{i}. #{movie.name} - #{movie.start_date}"
	end
end


37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# File 'lib/coming_soon/cli.rb', line 37

def menu_selection
	input = ''

	while input != 'exit'
		puts ''
		puts 'You may enter a movie number for more details or "list" to see the menu again or "exit"'

		input = gets.strip

		if input.to_i > 0 && input.to_i < @movies.size+1
			puts "* #{@movies[input.to_i - 1].name} - #{@movies[input.to_i - 1].start_date} *"
			puts @movies[input.to_i - 1].synopsis	
		elsif input == 'list'
			list_saved_movies
		elsif input == 'exit'
			goodbye	
		else
			puts 'Invalid selection!'
			menu_selection
		end	
	end	
end