Class: DeviseMailer

Inherits:
Devise::Mailer
  • Object
show all
Includes:
Gitlab::Email::SingleRecipientValidator
Defined in:
app/mailers/devise_mailer.rb

Instance Method Summary collapse

Methods included from Gitlab::Email::SingleRecipientValidator

#validate_single_recipient_in_email, #validate_single_recipient_in_email!, #validate_single_recipient_in_opts!

Instance Method Details

#devise_mail(record, action, opts = {}, &block) ⇒ Object

Override devise_mail so that all emails, not just those redefined here, can only be sent to a single to: address.



16
17
18
19
# File 'app/mailers/devise_mailer.rb', line 16

def devise_mail(record, action, opts = {}, &block)
  validate_single_recipient_in_opts!(opts)
  super
end

#email_changed(record, opts = {}) ⇒ Object



34
35
36
37
38
39
40
# File 'app/mailers/devise_mailer.rb', line 34

def email_changed(record, opts = {})
  if Gitlab.com?
    devise_mail(record, :email_changed_gitlab_com, opts)
  else
    devise_mail(record, :email_changed, opts)
  end
end

#password_change_by_admin(record, opts = {}) ⇒ Object



21
22
23
# File 'app/mailers/devise_mailer.rb', line 21

def password_change_by_admin(record, opts = {})
  devise_mail(record, :password_change_by_admin, opts)
end

#reset_password_instructions(record, token, opts = {}) ⇒ Object



29
30
31
32
# File 'app/mailers/devise_mailer.rb', line 29

def reset_password_instructions(record, token, opts = {})
  headers['X-Mailgun-Suppressions-Bypass'] = 'true'
  super
end

#user_admin_approval(record, opts = {}) ⇒ Object



25
26
27
# File 'app/mailers/devise_mailer.rb', line 25

def user_admin_approval(record, opts = {})
  devise_mail(record, :user_admin_approval, opts)
end