Sha256: 8d7750acf53a63c4fb2417b7d3e0dfdf96a8e8f79f39daec4deb1ef840bf79ac

Contents?: true

Size: 1.16 KB

Versions: 6

Compression:

Stored size: 1.16 KB

Contents

class IshManager::OfficeMailer < IshManager::ApplicationMailer
  default from: 'WasyaCo Consulting & Software Development <no-reply@mail.wasyaco.com>'

  ## 2023-04-02 _vp_ Continue.
  def send_context_email ctx_id
    @ctx = Ctx.find ctx_id

    @utm_tracking_str = {
      'cid'          => @ctx.lead_id,
      'utm_campaign' => @ctx.tmpl.slug,
      'utm_medium'   => 'email',
      'utm_source'   => @ctx.tmpl.slug,
    }.map { |k, v| "#{k}=#{v}" }.join("&")

    ac   = ActionController::Base.new
    ac.instance_variable_set( :@ctx, @ctx )
    ac.instance_variable_set( :@lead, @ctx.lead )
    ac.instance_variable_set( :@utm_tracking_str, @utm_tracking_str )

    if 'plain' == @ctx.tmpl.layout
      rendered_str = ERB.new( @ctx.body ).result( @ctx.get_binding )
    else
      rendered_str = ac.render_to_string("ish_manager/email_templates/_#{@ctx.tmpl.layout}")
    end
    @ctx.update({
      rendered_str: rendered_str,
      sent_at: Time.now.to_s,
    })

    mail( from: @ctx.from_email,
          to: @ctx.to_email,
          subject: ERB.new( @ctx.subject ).result( @ctx.get_binding ),
          body: rendered_str,
          content_type: "text/html" )
  end

end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
ish_manager-0.1.8.469 app/mailers/ish_manager/office_mailer.rb
ish_manager-0.1.8.468 app/mailers/ish_manager/office_mailer.rb
ish_manager-0.1.8.467 app/mailers/ish_manager/office_mailer.rb
ish_manager-0.1.8.466 app/mailers/ish_manager/office_mailer.rb
ish_manager-0.1.8.465 app/mailers/ish_manager/office_mailer.rb
ish_manager-0.1.8.464 app/mailers/ish_manager/office_mailer.rb