module SimpleEmailPreview
Constants
- VERSION
Attributes
view_hooks[R]
@return [SimpleEmailPreview::ViewHooks]
Public Class Methods
before_render(&block)
click to toggle source
# File lib/simple_email_preview.rb, line 73 def before_render(&block) inline_main_app_routes! ((@hooks ||= {})[:before_render] ||= []) << block end
find_preview_classes(dir)
click to toggle source
# File lib/simple_email_preview.rb, line 54 def find_preview_classes(dir) return [] unless File.directory?(dir) Dir.chdir(dir) { Dir['**/*_preview.rb'].map { |p| p.sub(/\.rb$/, '').camelize } } end
inline_main_app_routes!()
click to toggle source
# File lib/simple_email_preview.rb, line 78 def inline_main_app_routes! unless ::SimpleEmailPreview::EmailsController.instance_variable_get(:@inlined_routes) ::SimpleEmailPreview::EmailsController.helper ::SimpleEmailPreview::MainAppRouteDelegator ::SimpleEmailPreview::EmailsController.instance_variable_set(:@inlined_routes, true) end end
layout=(layout)
click to toggle source
# File lib/simple_email_preview.rb, line 59 def layout=(layout) [::SimpleEmailPreview::ApplicationController, ::SimpleEmailPreview::EmailsController].each { |ctrl| ctrl.layout layout } if layout && layout !~ %r{^simple_email_preview/} # inline application routes if using an app layout inline_main_app_routes! end end
preview_classes=(classes)
click to toggle source
# File lib/simple_email_preview.rb, line 49 def preview_classes=(classes) @preview_classes = classes SimpleEmailPreview::Preview.load_all(classes) end
run_before_render(mail, preview)
click to toggle source
# File lib/simple_email_preview.rb, line 67 def run_before_render(mail, preview) (defined?(@hooks) && @hooks[:before_render] || []).each do |block| block.call(mail, preview) end end
setup() { |self| ... }
click to toggle source
# File lib/simple_email_preview.rb, line 85 def setup yield self end