effective_email_templates 1.5.1 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1522926c50dd2f6874bc8cb41b906b4c8c2d31b8f0952ae1dc7482b647dc184c
4
- data.tar.gz: 3cab7ba180c3eadfeb74e6c6806ed24b46b74408073eb94f04598b23776bdfce
3
+ metadata.gz: b61c8d36a7412e96eef80c03fb75480a8da1de2156b67587d7fb88b24e85e7bd
4
+ data.tar.gz: dca4e0ccafebf84a7b19f78797854fbb98d1547e18d7a593b408f69ef6e3658c
5
5
  SHA512:
6
- metadata.gz: 93d50932390ea0c38b202196451c58623f433a78d8d131b0568da75a1e44b0029653285934a1d311db7c7a658a2c78c969bbbabf78144e2335d4454ccd0fbfdb
7
- data.tar.gz: 9b5fe215d1dd3bb1f2e05d1a5417536eb4a38f3a29c0369e0346562347c308b88a21fe9d96a4c1e6f017d926b01429aed989e9e8f0310d7f4754b4ed7c152675
6
+ metadata.gz: 65426e9861152f2794e2817f70983fed0c9c918f3c24fd819f92aa1353fc28d122c4573b0c4e68ce8953d7dcb7ff5de170d38b6eab6969c71d77fa0ad6b0d75c
7
+ data.tar.gz: 9754add70dac2088baf9ee4c8b2fdb4e9f3f290043db9a9af358c323655e4f11d7f6aa0073506f4fe11b421c6f04fc650dd31ce58175d298cd1cbeb7664b4d57
@@ -9,21 +9,26 @@ module EffectiveEmailTemplatesMailer
9
9
 
10
10
  assigns = (@assigns || {})
11
11
 
12
- # Parse assigns. Special keys for body and subject.
12
+ # Parse body content if given
13
13
  body = assigns.delete(:body) || headers[:body] || headers['body']
14
14
  email_template.body = body if body.present?
15
15
 
16
- # Ignore the subject when passed in via mail method subject: key.
16
+ # Parse subject content if explicitly given
17
+ # Otherwise the :subject key is a default and should be ignored in favor of the email template subject instead
17
18
  subject = assigns.delete(:subject)
19
+ subject ||= (headers[:subject] || headers['subject']) if (headers[:custom_subject] || headers['custom_subject'])
18
20
  email_template.subject = subject if subject.present?
19
21
 
20
22
  # Add any _url helpers
21
23
  assigns = route_url_assigns(email_template, assigns).merge(assigns)
22
24
 
23
- # Render from the template, possibly with updated body
25
+ # Render from the template, possibly with updated body and subject
24
26
  rendered = email_template.render(assigns)
25
27
 
26
- super(rendered.merge(headers.except(:body, :subject, 'body', 'subject')))
28
+ # Merge any other passed values
29
+ merged = rendered.merge(headers.except(:body, :subject, :custom_subject, 'body', 'subject', 'custom_subject'))
30
+
31
+ super(merged)
27
32
  end
28
33
 
29
34
  private
@@ -1,3 +1,3 @@
1
1
  module EffectiveEmailTemplates
2
- VERSION = '1.5.1'.freeze
2
+ VERSION = '1.6.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_email_templates
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.1
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect