rails_email_preview 0.2.24 → 0.2.25

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
  SHA1:
3
- metadata.gz: 723b3b7a4b1d1376acf3258b3ec572240ee6a1be
4
- data.tar.gz: da7a7ab5422204565144db25a899436cc411d767
3
+ metadata.gz: 7c6956392e26974e226939cbce3cdedcbfbc4b7d
4
+ data.tar.gz: 6591321d5cc54aeedcf4cfc85546b51a5d2b981c
5
5
  SHA512:
6
- metadata.gz: 92cec71d380a0ae6e3733a312577fc2d8010fc95288a9e7fb0c0f3379053d1d6e58820a865298a43165761b68242df2da13031c713b68b225fafda27b5b8bdf1
7
- data.tar.gz: b19cb93bfc3dc78d0ed07c6d6bee2cb30aec9fbefadf9777dc157c9bd768daa3d908551b3cfdbf3eb690aba622a90ea61b32929c084290ca9e56b82254646e8e
6
+ metadata.gz: 816b1dcf2f151e63452cd4b066117be76ce03fd3bc4d932528fdbb640eb562ca248f7ecaa4ace978329694ea4f7df10de355a8a1ed3f6fb4d78c351152084288
7
+ data.tar.gz: 9dfe3aee7e8708a8b8fc1ec8e5a93bf02af73f931464e359304e34fc61acc376a9f7a0ba9d4e125706d1b47604914a6357e51ee4fadbd2bcca271b2a09a402cc
data/README.md CHANGED
@@ -16,7 +16,7 @@ REP can use your application styles, markup is compatible with [bootstrap 3][rep
16
16
  Add [![Gem Version][gem-badge]][gem] to Gemfile:
17
17
 
18
18
  ```ruby
19
- gem 'rails_email_preview', '~> 0.2.24'
19
+ gem 'rails_email_preview', '~> 0.2.25'
20
20
  ```
21
21
 
22
22
  Add an initializer and the routes:
@@ -26,13 +26,6 @@ module RailsEmailPreview
26
26
  end
27
27
  end
28
28
 
29
- # Download attachment
30
- def show_attachment
31
- filename = "#{params[:filename]}.#{params[:format]}"
32
- attachment = preview_mail(false).attachments.find { |a| a.filename == filename }
33
- send_data attachment.body.raw_source, filename: filename
34
- end
35
-
36
29
  # Really deliver an email
37
30
  def test_deliver
38
31
  redirect_url = rails_email_preview.rep_email_url(params.slice(:preview_id, :email_locale))
@@ -52,12 +45,19 @@ module RailsEmailPreview
52
45
  end
53
46
  end
54
47
 
55
- # Used by CMS integration to refetch header after editing
48
+ # Download attachment
49
+ def show_attachment
50
+ filename = "#{params[:filename]}.#{params[:format]}"
51
+ attachment = preview_mail(false).attachments.find { |a| a.filename == filename }
52
+ send_data attachment.body.raw_source, filename: filename
53
+ end
54
+
55
+ # Render headers partial. Used by the CMS integration to refetch headers after editing.
56
56
  def show_headers
57
57
  render partial: 'rails_email_preview/emails/headers', locals: {mail: mail_and_body.first}
58
58
  end
59
59
 
60
- # Used by the CMS integration to provide a link back to Show inside the edit iframe
60
+ # Render email body iframe HTML. Used by the CMS integration to provide a link back to Show from Edit.
61
61
  def show_body
62
62
  prevent_browser_caching
63
63
  cms_edit_links!
@@ -40,7 +40,7 @@ module RailsEmailPreview::EmailsHelper
40
40
  def attachment_links(mail)
41
41
  mail.attachments.map do |attachment|
42
42
  url = rails_email_preview.rep_raw_email_attachment_path(preview_params.merge(filename: attachment.filename))
43
- link_to(attachment.filename, url)
43
+ link_to(attachment.filename, url, title: attachment.header.to_s)
44
44
  end.to_sentence.html_safe
45
45
  end
46
46
 
@@ -19,6 +19,8 @@ html
19
19
  body {
20
20
  background-color:white;
21
21
  }
22
+ javascript:
23
+ document.addEventListener('DOMContentLoaded', window.parent.rep.iframeOnDOMContentLoaded, true);
22
24
 
23
25
  = yield(:head)
24
26
  body
@@ -24,27 +24,33 @@ javascript:
24
24
  return Math.max(body.scrollHeight, body.offsetHeight, body.clientHeight);
25
25
  }
26
26
 
27
- // This is only called back once the iframe has finished loading everything, including images
28
- rep.iframeOnLoad = function() {
27
+ function fetchHeaders() {
28
+ var headersView = doc.getElementById('email-headers'),
29
+ xhr = new XMLHttpRequest();
30
+ xhr.open('GET', headersView.getAttribute('data-url'), true);
31
+ xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
32
+ xhr.send(null);
33
+ xhr.onreadystatechange = function () {
34
+ if (xhr.readyState === 4) {
35
+ headersView.innerHTML = xhr.responseText;
36
+ }
37
+ }
38
+ }
39
+
40
+ // Called from the iframe via window.parent
41
+ rep.iframeOnDOMContentLoaded = function () {
29
42
  rep.loaded = true;
30
43
  resizeIframe();
31
-
32
44
  // CMS refresh headers hook
33
45
  if (rep.fetchHeadersOnNextLoad) {
34
46
  rep.fetchHeadersOnNextLoad = false;
35
- var headersView = doc.getElementById('email-headers'),
36
- xhr = new XMLHttpRequest();
37
- xhr.open('GET', headersView.getAttribute('data-url'), true);
38
- xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
39
- xhr.send(null);
40
- xhr.onreadystatechange = function() {
41
- if (xhr.readyState === 4) {
42
- headersView.innerHTML = xhr.responseText;
43
- }
44
- }
47
+ fetchHeaders();
45
48
  }
46
49
  };
47
50
 
51
+ // This is only called back once the iframe has finished loading everything, including images
52
+ rep.iframeOnLoad = resizeIframe;
53
+
48
54
  // Resize on window resize
49
55
  if (!rep.resizeAttached) {
50
56
  window.addEventListener('resize', function() {
@@ -1,3 +1,3 @@
1
1
  module RailsEmailPreview
2
- VERSION = '0.2.24'
2
+ VERSION = '0.2.25'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_email_preview
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.24
4
+ version: 0.2.25
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gleb Mazovetskiy
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-18 00:00:00.000000000 Z
11
+ date: 2014-09-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -80,20 +80,6 @@ dependencies:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: i18n-tasks
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: 0.7.6
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: 0.7.6
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: capybara
99
85
  requirement: !ruby/object:Gem::Requirement