Sha256: 445189ed2353f238f99d805ead936d93b4d11c18cce4eedb6d8fa1bda1934ee9

Contents?: true

Size: 1.51 KB

Versions: 5

Compression:

Stored size: 1.51 KB

Contents

class ::IshManager::EmailCampaignsController < IshManager::ApplicationController

  before_action :set_lists

  def index
    authorize! :index, Ish::EmailCampaign
    @campaigns = Ish::EmailCampaign.all
  end

  def new
    @campaign = Ish::EmailCampaign.new
    authorize! :new, @campaign
  end

  def create
    @campaign = Ish::EmailCampaign.new params[:campaign].permit!
    authorize! :create, @campaign
    if @campaign.save
      flash[:notice] = "created campaign"
    else
      flash[:alert] = "Cannot create campaign: #{@campaign.errors.messages}"
    end
    redirect_to :action => 'index'
  end

  def do_send
    @campaign = Ish::EmailCampaign.find params[:id]
    authorize! :send, @campaign
    @campaign.leads.each do |lead|
      tmpl = @campaign.email_template

      ctx = Ctx.create!({
        email_template: tmpl,
        send_at: Time.now,
        lead_id: lead.id,
        from_email: tmpl.from_email,
        subject: tmpl.subject,
      })
    end

  end

  def show
    @campaign = Ish::EmailCampaign.find params[:id]
    authorize! :show, @campaign
  end

  def edit
    @campaign = Ish::EmailCampaign.find params[:id]
    authorize! :edit, @campaign
  end

  def update
    @campaign = Ish::EmailCampaign.find params[:id]
    authorize! :update, @campaign
    if @campaign.update_attributes params[:campaign].permit!
      flash[:notice] = 'Successfully updated campaign.'
    else
      flash[:alert] = "Cannot update campaign: #{@campaign.errors.messages}"
    end
    redirect_to :action => 'index'
  end

end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ish_manager-0.1.8.413 app/controllers/ish_manager/email_campaigns_controller.rb
ish_manager-0.1.8.412 app/controllers/ish_manager/email_campaigns_controller.rb
ish_manager-0.1.8.411 app/controllers/ish_manager/email_campaigns_controller.rb
ish_manager-0.1.8.410 app/controllers/ish_manager/email_campaigns_controller.rb
ish_manager-0.1.8.409 app/controllers/ish_manager/email_campaigns_controller.rb