Class: ActionMailer::Preview
- Inherits:
-
Object
- Object
- ActionMailer::Preview
- Extended by:
- ActiveSupport::DescendantsTracker
- Defined in:
- lib/action_mailer/preview.rb
Instance Attribute Summary collapse
-
#params ⇒ Object
readonly
Returns the value of attribute params.
Class Method Summary collapse
-
.all ⇒ Object
Returns all mailer preview classes.
-
.call(email, params = {}) ⇒ Object
Returns the mail object for the given email name.
-
.email_exists?(email) ⇒ Boolean
Returns
true
if the email exists. -
.emails ⇒ Object
Returns all of the available email previews.
-
.exists?(preview) ⇒ Boolean
Returns
true
if the preview exists. -
.find(preview) ⇒ Object
Find a mailer preview by its underscored class name.
-
.preview_name ⇒ Object
Returns the underscored name of the mailer preview without the suffix.
Instance Method Summary collapse
-
#initialize(params = {}) ⇒ Preview
constructor
A new instance of Preview.
Constructor Details
#initialize(params = {}) ⇒ Preview
Returns a new instance of Preview.
98 99 100 |
# File 'lib/action_mailer/preview.rb', line 98 def initialize(params = {}) @params = params end |
Instance Attribute Details
#params ⇒ Object (readonly)
Returns the value of attribute params.
96 97 98 |
# File 'lib/action_mailer/preview.rb', line 96 def params @params end |
Class Method Details
.all ⇒ Object
Returns all mailer preview classes.
104 105 106 107 |
# File 'lib/action_mailer/preview.rb', line 104 def all load_previews if descendants.empty? descendants.sort_by { |mailer| mailer.name.titleize } end |
.call(email, params = {}) ⇒ Object
Returns the mail object for the given email name. The registered preview interceptors will be informed so that they can transform the message as they would if the mail was actually being delivered.
112 113 114 115 116 117 |
# File 'lib/action_mailer/preview.rb', line 112 def call(email, params = {}) preview = new(params) = preview.public_send(email) inform_preview_interceptors() end |
.email_exists?(email) ⇒ Boolean
Returns true
if the email exists.
125 126 127 |
# File 'lib/action_mailer/preview.rb', line 125 def email_exists?(email) emails.include?(email) end |
.emails ⇒ Object
Returns all of the available email previews.
120 121 122 |
# File 'lib/action_mailer/preview.rb', line 120 def emails public_instance_methods(false).map(&:to_s).sort end |
.exists?(preview) ⇒ Boolean
Returns true
if the preview exists.
130 131 132 |
# File 'lib/action_mailer/preview.rb', line 130 def exists?(preview) all.any? { |p| p.preview_name == preview } end |
.find(preview) ⇒ Object
Find a mailer preview by its underscored class name.
135 136 137 |
# File 'lib/action_mailer/preview.rb', line 135 def find(preview) all.find { |p| p.preview_name == preview } end |
.preview_name ⇒ Object
Returns the underscored name of the mailer preview without the suffix.
140 141 142 |
# File 'lib/action_mailer/preview.rb', line 140 def preview_name name.delete_suffix("Preview").underscore end |