inline_styles_mailer 0.0.5 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -41,10 +41,6 @@ module InlineStylesMailer
41
41
  @css_content
42
42
  end
43
43
 
44
- def locate_layout
45
- "mailer"
46
- end
47
-
48
44
  def page
49
45
  @page ||= InlineStyles::Page.new.with_css(css_content)
50
46
  end
@@ -62,19 +58,36 @@ module InlineStylesMailer
62
58
  super(mail, &block) # We'll just let this pass through
63
59
  else
64
60
  super(options) do |format|
65
- # Only format for text if an appropriate template exists
66
- # TODO we should be finding this file using Rails
67
- unless Dir[Rails.root.join('app', 'views', self.class.name.underscore, "#{action_name}.text.*")].empty?
68
- format.text do
69
- render
61
+ # Rails 3.1 takes an array, while Rails 3.0 takes a string.
62
+ # See https://github.com/billhorsman/inline_styles_mailer/issues/1
63
+ prefixes = options[:template_path] || self.class.name.underscore
64
+ prefixes = [prefixes] unless Rails.version =~ /^3\.0/
65
+ templates = lookup_context.find_all(options[:template_name] || action_name, prefixes)
66
+ templates.each do |template|
67
+ template_path = template.inspect.split("/").slice(-2, 2).join("/")
68
+ template.formats.each do |f|
69
+ format.send(f) do
70
+ case f.to_s
71
+ when "html"
72
+ html = render_to_string :file => template_path, :layout => layout_to_use, :formats => [:html]
73
+ render :text => self.class.page.with_html(html).apply, :formats => [:html]
74
+ else
75
+ render :formats => [f]
76
+ end
77
+ end
70
78
  end
71
79
  end
72
- format.html do
73
- html = render_to_string :file => self.class.locate_template(action_name), :layout => self.class.locate_layout
74
- render :text => self.class.page.with_html(html).apply
75
- end
76
80
  end
77
81
  end
78
82
  end
79
83
 
84
+ def layout_to_use
85
+ case _layout
86
+ when ActionView::Template
87
+ _layout.inspect.split("/").last.split(".").first
88
+ when String
89
+ _layout.split("/").last.split(".").first
90
+ end
91
+ end
92
+
80
93
  end
@@ -1,3 +1,3 @@
1
1
  module InlineStylesMailer
2
- VERSION = "0.0.5"
2
+ VERSION = "0.0.6"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: inline_styles_mailer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-12-06 00:00:00.000000000Z
12
+ date: 2012-10-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &70197361758100 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70197361758100
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: inline_styles
27
- requirement: &70197361757240 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ! '>='
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: '0'
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *70197361757240
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: rails
38
- requirement: &70197361756400 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ~>
@@ -43,10 +53,15 @@ dependencies:
43
53
  version: '3.1'
44
54
  type: :runtime
45
55
  prerelease: false
46
- version_requirements: *70197361756400
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: '3.1'
47
62
  - !ruby/object:Gem::Dependency
48
63
  name: sass-rails
49
- requirement: &70197361755480 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ! '>='
@@ -54,7 +69,12 @@ dependencies:
54
69
  version: '0'
55
70
  type: :runtime
56
71
  prerelease: false
57
- version_requirements: *70197361755480
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
58
78
  description: Convenient use of inline_styles gem with Rails 3.1
59
79
  email:
60
80
  - bill@logicalcobwebs.com
@@ -79,8 +99,8 @@ files:
79
99
  - spec/fixtures/assets/stylesheets/_override.css.sass
80
100
  - spec/fixtures/assets/stylesheets/_override.css.scss
81
101
  - spec/fixtures/layout.html.erb
82
- - spec/fixtures/views/foo_mailer/foo.html
83
- - spec/fixtures/views/layouts/mailer.html.erb
102
+ - spec/fixtures/views/foo_mailer/foo.html.erb
103
+ - spec/fixtures/views/layouts/foo_mailer.html.erb
84
104
  - spec/foo_mailer.rb
85
105
  - spec/inline_styles_mailer/inline_styles_mailer_spec.rb
86
106
  - spec/spec_helper.rb
@@ -102,12 +122,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
102
122
  - - ! '>='
103
123
  - !ruby/object:Gem::Version
104
124
  version: '0'
105
- segments:
106
- - 0
107
- hash: 1994760373707209580
108
125
  requirements: []
109
126
  rubyforge_project: inline_styles_mailer
110
- rubygems_version: 1.8.10
127
+ rubygems_version: 1.8.23
111
128
  signing_key:
112
129
  specification_version: 3
113
130
  summary: Convenient use of inline_styles gem with Rails 3.1
@@ -117,8 +134,8 @@ test_files:
117
134
  - spec/fixtures/assets/stylesheets/_override.css.sass
118
135
  - spec/fixtures/assets/stylesheets/_override.css.scss
119
136
  - spec/fixtures/layout.html.erb
120
- - spec/fixtures/views/foo_mailer/foo.html
121
- - spec/fixtures/views/layouts/mailer.html.erb
137
+ - spec/fixtures/views/foo_mailer/foo.html.erb
138
+ - spec/fixtures/views/layouts/foo_mailer.html.erb
122
139
  - spec/foo_mailer.rb
123
140
  - spec/inline_styles_mailer/inline_styles_mailer_spec.rb
124
141
  - spec/spec_helper.rb