Sha256: c323826496c6412892cf83e040a88a71b7ffe41ab9a833cfb81a045dd6843799
Contents?: true
Size: 1.3 KB
Versions: 3
Compression:
Stored size: 1.3 KB
Contents
namespace :peoplefinder do def inadequate_profiles @inadequate_profiles = Peoplefinder::Person.inadequate_profiles end def inadequate_profiles_with_email inadequate_profiles.select { |person| person.email.present? } end desc 'list the email addresses of people with inadequate profiles' task inadequate_profiles: :environment do inadequate_profiles.each do |person| puts "#{ person.surname }, #{ person.given_name }: #{ person.email }" end puts "\n** There are #{ inadequate_profiles.count } inadequate profiles." puts "** #{ inadequate_profiles_with_email.count } inadequate profiles have email addresses." puts "\n" end desc 'email people with inadequate profiles' task inadequate_profile_reminders: :environment do recipients = inadequate_profiles_with_email puts "\nYou are about to email #{ recipients.count } people" puts 'Are you sure you want to do this? [Y/N]' if STDIN.gets.chomp == 'Y' recipients.each do |recipient| if Peoplefinder::EmailAddress.new(recipient.email).valid_address? Peoplefinder::ReminderMailer.inadequate_profile(recipient).deliver puts "Email sent to: #{ recipient.email }" else puts "Email *not* sent to: #{ recipient.email }" end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
peoplefinder-0.1.1 | lib/tasks/peoplefinder.rake |
peoplefinder-0.1.0 | lib/tasks/peoplefinder.rake |
peoplefinder-0.0.2 | lib/tasks/peoplefinder.rake |