Class: Email::Renderer
- Inherits:
-
Object
- Object
- Email::Renderer
- Defined in:
- lib/email/renderer.rb
Instance Method Summary collapse
- #html ⇒ Object
-
#initialize(message, opts = nil) ⇒ Renderer
constructor
A new instance of Renderer.
- #text ⇒ Object
Constructor Details
#initialize(message, opts = nil) ⇒ Renderer
Returns a new instance of Renderer.
5 6 7 8 |
# File 'lib/email/renderer.rb', line 5 def initialize(, opts = nil) @message = @opts = opts || {} end |
Instance Method Details
#html ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/email/renderer.rb', line 17 def html style = if @message.html_part Email::Styles.new(@message.html_part.body.to_s, @opts) else unstyled = UserNotificationRenderer.render( template: "layouts/email_template", format: :html, locals: { html_body: PrettyText.cook(text).html_safe, }, ) Email::Styles.new(unstyled, @opts) end style.format_basic style.format_html DiscoursePluginRegistry.apply_modifier(:email_renderer_html, style, @message) style.to_html end |
#text ⇒ Object
10 11 12 13 14 15 |
# File 'lib/email/renderer.rb', line 10 def text return @text if @text @text = (+(@message.text_part ? @message.text_part : @message).body.to_s).force_encoding("UTF-8") @text = CGI.unescapeHTML(@text) end |