class PredictEmail::PredictEmail
Public Instance Methods
emails_to_string(emails)
click to toggle source
# File lib/predict_email/predict_email.rb, line 20 def emails_to_string(emails) emails.join(", ").gsub(", ", " OR ") end
first_initial_dot_last_initial(name,company)
click to toggle source
# File lib/predict_email/predict_email.rb, line 43 def first_initial_dot_last_initial(name,company) first, last = split_name(name) "#{first[0]}.#{last[0]}@#{company}" end
first_initial_dot_last_name(name, company)
click to toggle source
# File lib/predict_email/predict_email.rb, line 38 def first_initial_dot_last_name(name, company) first, last = split_name(name) "#{first[0]}.#{last}@#{company}" end
first_name_dot_last_initial(name, company)
click to toggle source
# File lib/predict_email/predict_email.rb, line 33 def first_name_dot_last_initial(name, company) first, last = split_name(name) "#{first}.#{last[0]}@#{company}" end
first_name_dot_last_name(name, company)
click to toggle source
# File lib/predict_email/predict_email.rb, line 28 def first_name_dot_last_name(name, company) first, last = split_name(name) "#{first}.#{last}@#{company}" end
patterns_to_string(patterns)
click to toggle source
# File lib/predict_email/predict_email.rb, line 16 def patterns_to_string(patterns) patterns.join(", ") end
pluralize_pattern(patterns)
click to toggle source
# File lib/predict_email/predict_email.rb, line 48 def pluralize_pattern(patterns) patterns.size > 1 ? 'patterns' : 'pattern' end
predict_email(name, company)
click to toggle source
# File lib/predict_email/predict_email.rb, line 6 def predict_email(name, company) patterns = FindPattern.new.find_patterns(company) if patterns.first emails = patterns.map {|pat| self.send(pat.to_sym, name, company)} "#{company} uses #{patterns.size} email #{pluralize_pattern(patterns)}: #{patterns_to_string(patterns)}. We predict #{name}'s email to be: #{emails_to_string(emails)}." else "Sorry, we can't predict the email for this person." end end
split_name(name)
click to toggle source
# File lib/predict_email/predict_email.rb, line 24 def split_name(name) name.downcase.split(" ") end