Class: BlogSubscriptionMailer

Inherits:
ApplicationMailer show all
Defined in:
app/mailers/blog_subscription_mailer.rb

Overview

Sends double opt-in confirmation emails to blog subscribers.
Loads content from the Redactor 4 EmailTemplate with system_code BLOG_CONFIRM.

Instance Method Summary collapse

Methods inherited from ApplicationMailer

#null_mail

Instance Method Details

#confirmation(subscriber) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'app/mailers/blog_subscription_mailer.rb', line 10

def confirmation(subscriber)
  template = EmailTemplate.find_by(system_code: 'BLOG_CONFIRM')
  return null_mail unless template

  confirm_url = blog_confirm_url(
    token: Encryption.encrypt_string(subscriber.email_address),
    host: "https://#{WEB_HOSTNAME}"
  )

  merge_options = {
    'confirm_url' => confirm_url,
    'unsubscribe_url' => EmailPreference.generate_email_preferences_form_url(subscriber.email_address)
  }

  @body = template.render_body(merge_options)
  return null_mail if @body.blank?

  mail(
    to: subscriber.email_address,
    subject: I18n.t('mailers.blog_subscription_mailer.confirmation.subject'),
    template_path: 'blog_subscription_mailer',
    template_name: template.effective_template
  )
end