discourse/lib/email_renderer.rb

23 lines
477 B
Ruby

require_dependency 'email_styles'
class EmailRenderer
def initialize(message)
@message = message
end
def text
@text ||= @message.body.to_s.force_encoding('UTF-8')
end
def html
formatted_body = EmailStyles.new(PrettyText.cook(text, environment: 'email')).format
ActionView::Base.new(Rails.configuration.paths["app/views"]).render(
template: 'email/template',
format: :html,
locals: { html_body: formatted_body }
)
end
end