Class: IshManager::EmailCampaignJob
- Inherits:
-
Object
- Object
- IshManager::EmailCampaignJob
- Includes:
- Sidekiq::Job
- Defined in:
- app/jobs/ish_manager/email_campaign_job.rb
Overview
EmailContext is mongoid
Instance Method Summary collapse
Instance Method Details
#perform(campaign_id) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'app/jobs/ish_manager/email_campaign_job.rb', line 9 def perform campaign_id @ctx = @campaign = ::Ish::EmailContext.find campaign_id print "Sending #{@campaign.slug}:" if @ctx.email_template.type != 'partial' raise "only `partial` template type is supported for campaigns." end if @ctx.sent_at raise 'This campaign has already been sent!' end @ctx.campaign_leads.each do |campaign_lead| IshManager::OfficeMailer.send_campaign_email( campaign_id, campaign_lead.id ).deliver_later print '.' end @campaign.update_attributes({ sent_at: Time.now }) puts 'ok' end |