jam-cloud/ruby/lib/jam_ruby/app/mailers/batch_mailer.rb

41 lines
1004 B
Ruby

module JamRuby
class BatchMailer < ActionMailer::Base
include SendGrid
layout "user_mailer"
sendgrid_category :use_subject_lines
sendgrid_unique_args :env => Environment.mode
def _send_batch(batch, users)
@batch_body = batch.body
emails = users.map(&:email)
sendgrid_recipients(emails)
sendgrid_substitute(EmailBatch::VAR_FIRST_NAME, users.map(&:first_name))
sendgrid_substitute('@USERID', users.map(&:id))
batch.did_send(emails)
mail(:to => emails,
:from => batch.from_email,
:subject => batch.subject) do |format|
format.text
format.html
end
end
def send_batch_email(batch_id, user_id)
user = User.find_by_id(user_id)
batch = EmailBatch.find(batch_id)
self._send_batch(batch, [user])
end
def send_batch_email_test(batch_id)
batch = EmailBatch.find(batch_id)
users = batch.test_users
self._send_batch(batch, users)
end
end
end