Sha256: 11f6854448de33947d9bf5043f8710a6f2854583f8198f04de810e10b64d73e5

Contents?: true

Size: 696 Bytes

Versions: 109

Compression:

Stored size: 696 Bytes

Contents

##
## EmailContext is mongoid
##
class IshManager::EmailCampaignJob
  include Sidekiq::Job
  queue_as :mailers

  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

end

Version data entries

109 entries across 109 versions & 1 rubygems

Version Path
ish_manager-0.1.8.443 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.442 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.441 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.440 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.439 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.438 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.437 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.436 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.435 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.434 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.433 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.432 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.431 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.430 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.429 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.428 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.427 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.426 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.425 app/jobs/ish_manager/email_campaign_job.rb
ish_manager-0.1.8.424 app/jobs/ish_manager/email_campaign_job.rb