45 lines
1013 B
Ruby
45 lines
1013 B
Ruby
module JamRuby
|
|
class EmailBatch < ActiveRecord::Base
|
|
self.table_name = "email_batches"
|
|
|
|
VAR_FIRST_NAME = '@FIRSTNAME'
|
|
VAR_LAST_NAME = '@LASTNAME'
|
|
|
|
DEFAULT_SENDER = "support@jamkazam.com"
|
|
|
|
# has_many :email_batch_results, :class_name => 'JamRuby::EmailBatchResult'
|
|
|
|
def self.qualified_users
|
|
User.select(:email)
|
|
.where(:opt_out_email_batch => false)
|
|
.order('created_at DESC')
|
|
end
|
|
|
|
def deliver
|
|
self.class.qualified_users.each
|
|
end
|
|
|
|
def test_users
|
|
self.test_emails.split(',').collect do |ee|
|
|
ee.strip!
|
|
uu = User.new
|
|
uu.email = ee
|
|
uu.first_name = ee.match(/^(.*)@/)[1].to_s
|
|
uu.last_name = 'Test'
|
|
uu
|
|
end
|
|
end
|
|
|
|
def send_test_batch
|
|
self.test_users.each do |uu|
|
|
BatchMailer.send_batch_email_test(self.id, uu.email).deliver
|
|
end
|
|
end
|
|
|
|
def merged_body(user)
|
|
body.gsub(VAR_FIRST_NAME, user.first_name).gsub(VAR_LAST_NAME, user.last_name)
|
|
end
|
|
|
|
end
|
|
end
|