Class: EmailTemplate

Inherits:
Template show all
Defined in:
lib/app/models/email_template.rb

Overview

Support an email template for an account

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Template

from_file

Methods included from StandardModel

#audit_action, #auto_strip_attributes, #capture_user_info, #clear_cache, #created_by_display_name, #delete_and_log, #destroy_and_log, included, #last_modified_by_display_name, #log_change, #log_deletion, #remove_blank_secure_fields, #save_and_log, #save_and_log!, #secure_fields, #update, #update!, #update_and_log, #update_and_log!

Methods included from App47Logger

clean_params, #clean_params, delete_parameter_keys, #log_controller_error, log_debug, #log_debug, log_error, #log_error, log_exception, #log_message, log_message, #log_warn, log_warn, mask_parameter_keys, #update_flash_messages

Class Method Details

.copy_default(name) ⇒ Object

Copy the default from disk



35
36
37
38
39
40
41
# File 'lib/app/models/email_template.rb', line 35

def self.copy_default(name)
  template = EmailTemplate.new
  template.name = name
  template.template = from_file name
  template.subject = from_file name, prefix: 'subject'
  template
end

Instance Method Details

#htmlize_templateObject

Make sure the template is wrapped in html



21
22
23
# File 'lib/app/models/email_template.rb', line 21

def htmlize_template
  self.template = "<body><pre>#{template}</pre></body>" if template.present? && !template.strip.start_with?('<')
end

#valid_liquid_templateObject



25
26
27
28
29
30
# File 'lib/app/models/email_template.rb', line 25

def valid_liquid_template
  super && Liquid::Template.parse(subject).nil?
rescue StandardError => error
  errors.add(:subject, "Invalid liquid text in subject: #{error.message}")
  false
end