class User
Attributes
disliked_drinks[RW]
great_drinks[RW]
liked_drinks[RW]
liked_ingredients[RW]
okay_drinks[RW]
quiz_results[RW]
Public Class Methods
all()
click to toggle source
# File lib/LiquerY/User.rb, line 13 def self.all @@all end
current_user()
click to toggle source
# File lib/LiquerY/User.rb, line 17 def self.current_user @@all[-1] end
new()
click to toggle source
# File lib/LiquerY/User.rb, line 6 def initialize self.liked_drinks = [] self.liked_ingredients = [] self.disliked_drinks = [] @@all << self end
Public Instance Methods
add_to_liked_ingredients()
click to toggle source
# File lib/LiquerY/User.rb, line 54 def add_to_liked_ingredients @liked_ingredients.concat((self.liked_drinks.map {|d| d.all_ingredients}).flatten.uniq) end
list_disliked_drinks()
click to toggle source
# File lib/LiquerY/User.rb, line 28 def list_disliked_drinks "Drinks you dislike: #{self.names(disliked_drinks)}." end
list_liked_drinks()
click to toggle source
# File lib/LiquerY/User.rb, line 21 def list_liked_drinks puts "Drinks you like:".cyan puts "\n\t#{self.print_list(self.liked_drinks.uniq)}".light_blue puts "\nDrinks we've recommended:".cyan puts "\n\t#{self.print_list(self.quiz_results)}".light_blue end
names(drink_array)
click to toggle source
# File lib/LiquerY/User.rb, line 46 def names(drink_array) drink_array.map {|drink| drink.strDrink} end
print_list(array)
click to toggle source
# File lib/LiquerY/User.rb, line 32 def print_list(array) array.each.with_object("") do |drink, string| if array.size == 1 string << drink.strDrink elsif array.size == 2 && drink == array[0] string << "#{drink.strDrink} " elsif drink == array[-1] string << "and #{drink.strDrink}" else string << "#{drink.strDrink}, " end end end
recent_choice()
click to toggle source
# File lib/LiquerY/User.rb, line 50 def recent_choice self.liked_drinks[-1] end