Class: MeetupCli::CLI

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

Instance Method Summary collapse

Instance Method Details

#callObject



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

def call
  list_categories
  menu
  list_activities
  exit_message
end

#exit_messageObject



46
47
48
# File 'lib/meetup_cli/cli.rb', line 46

def exit_message
  puts "Enjoy your day!"
end

#list_activitiesObject



32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/meetup_cli/cli.rb', line 32

def list_activities
#from the activities array thats now displayed
puts "Enter the activities you are interested in or exit:"
input = gets.strip.downcase
if input.to_i > 0 && input.to_i <= @activities.size
  # get details of that activities-meetup requested
  @activities[input.to_i-1].display_meetups
  elsif  input == "list"
    list_activities
  else
    puts "Not sure what you want, type list or exit"
  end
end

#list_categoriesObject



9
10
11
12
13
14
# File 'lib/meetup_cli/cli.rb', line 9

def list_categories
  puts "Welcome to Meetup!!"
  puts "Enter the category you are interested in or exit:"
  @categories = MeetupCli::Scraper.categories
  @categories.each_with_index {|val, index| puts "#{index+1}. #{val.name} - #{val.url}"}
end


16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/meetup_cli/cli.rb', line 16

def menu
input = nil
  #puts "Enter the category you are interested in or exit:"
  input = gets.strip.downcase
  if input.to_i > 0 && input.to_i <= @categories.size
    # get the list of activities for that Category
    #scraper should get the url and scrape the details
    @activities = @categories[input.to_i-1].activities
    @activities.each_with_index {|val, index| puts "#{index+1}. #{val.name} | #{val.tag_line} | #{val.url}"}
    elsif  input == "list"
      list_categories
    else
      puts "Not sure what you want, type list or exit"
    end
end