inline_styles_mailer 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
@@ -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