devmail 0.0.1 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/MIT-LICENSE +1 -1
- data/README.rdoc +1 -1
- data/Rakefile +27 -14
- data/app/assets/javascripts/devmail/application.js +16 -0
- data/app/assets/javascripts/devmail/messages.js +6 -0
- data/app/assets/stylesheets/devmail/application.css +12 -0
- data/app/controllers/devmail/application_controller.rb +4 -0
- data/app/controllers/devmail/messages_controller.rb +23 -0
- data/app/helpers/devmail/application_helper.rb +4 -0
- data/app/helpers/devmail/messages_helper.rb +4 -0
- data/app/mailers/devmail/sample.rb +16 -0
- data/app/views/devmail/messages/index.html.erb +11 -0
- data/app/views/devmail/messages/show.html.erb +60 -0
- data/app/views/devmail/sample/test.html.erb +3 -0
- data/app/views/devmail/sample/test.text.erb +3 -0
- data/app/views/layouts/devmail/application.html.erb +24 -0
- data/config/routes.rb +9 -4
- data/lib/devmail.rb +45 -1
- data/lib/devmail/engine.rb +5 -7
- data/lib/devmail/interceptor.rb +8 -0
- data/lib/devmail/message.rb +9 -0
- data/lib/devmail/storage.rb +35 -0
- data/lib/devmail/version.rb +3 -0
- data/lib/tasks/devmail_tasks.rake +4 -0
- data/test/devmail_test.rb +4 -0
- data/test/dummy/README.rdoc +261 -0
- data/test/dummy/Rakefile +7 -0
- data/test/dummy/app/assets/javascripts/application.js +15 -0
- data/test/dummy/app/assets/stylesheets/application.css +13 -0
- data/test/dummy/app/controllers/application_controller.rb +3 -0
- data/test/dummy/app/helpers/application_helper.rb +2 -0
- data/test/dummy/app/views/layouts/application.html.erb +14 -0
- data/test/dummy/config.ru +4 -0
- data/test/dummy/config/application.rb +65 -0
- data/test/dummy/config/boot.rb +10 -0
- data/test/dummy/config/environment.rb +5 -0
- data/test/dummy/config/environments/development.rb +31 -0
- data/test/dummy/config/environments/production.rb +64 -0
- data/test/dummy/config/environments/test.rb +35 -0
- data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/test/dummy/config/initializers/inflections.rb +15 -0
- data/test/dummy/config/initializers/mime_types.rb +5 -0
- data/test/dummy/config/initializers/secret_token.rb +7 -0
- data/test/dummy/config/initializers/session_store.rb +8 -0
- data/test/dummy/config/initializers/wrap_parameters.rb +10 -0
- data/test/dummy/config/locales/en.yml +5 -0
- data/test/dummy/config/routes.rb +4 -0
- data/test/dummy/log/development.log +7952 -0
- data/test/dummy/log/test.log +0 -0
- data/test/dummy/public/404.html +26 -0
- data/test/dummy/public/422.html +26 -0
- data/test/dummy/public/500.html +25 -0
- data/test/dummy/public/favicon.ico +0 -0
- data/test/dummy/script/rails +6 -0
- data/test/dummy/tmp/cache/assets/C25/600/sprockets%2F98d406a547145182ab81985ed1917142 +0 -0
- data/test/dummy/tmp/cache/assets/C67/1E0/sprockets%2F66adfac10320136c0904d1358096181b +0 -0
- data/test/dummy/tmp/cache/assets/CBA/C00/sprockets%2F26181f46c199727821a86ddade46146e +0 -0
- data/test/dummy/tmp/cache/assets/D01/980/sprockets%2F2b320bc41aa3ad35eb535642893ed892 +0 -0
- data/test/dummy/tmp/cache/assets/D0A/E50/sprockets%2F94538f6160a5824edb3745bdd30bc14e +0 -0
- data/test/dummy/tmp/cache/assets/D15/8E0/sprockets%2F19734b9b01e4ea6e1e7bb89c104c1999 +0 -0
- data/test/dummy/tmp/cache/assets/D1C/8D0/sprockets%2F1e70db6034597fb9ee057e7b6d24538f +0 -0
- data/test/dummy/tmp/cache/assets/D28/F50/sprockets%2Fbe51545aa62f291e0a3e29fab2243e21 +0 -0
- data/test/dummy/tmp/cache/assets/D38/C50/sprockets%2F776f3f3f1305ae96e4c716d0b4be13a2 +0 -0
- data/test/dummy/tmp/cache/assets/D52/EC0/sprockets%2F88a3c098fbd70f65efd6155663eb5b85 +0 -0
- data/test/dummy/tmp/cache/assets/D57/260/sprockets%2F37fd2aeebe185999b96553ed9771be04 +0 -0
- data/test/dummy/tmp/cache/assets/D66/240/sprockets%2F2746a4755124b01e5d4dfefd42bef4c2 +0 -0
- data/test/dummy/tmp/cache/assets/D7E/950/sprockets%2Fade5fb5cdf043061497b549c99f52de8 +0 -0
- data/test/dummy/tmp/cache/assets/DCF/280/sprockets%2Fed0b2a8d9e191b1293ab691e43d7edff +0 -0
- data/test/dummy/tmp/cache/assets/DD0/7E0/sprockets%2F92f33796e0e5a2ebe42032d8f4aeedcf +0 -0
- data/test/dummy/tmp/cache/assets/DDE/170/sprockets%2Fb14c61f9bcfa427398f9439e3cebfdb8 +0 -0
- data/test/dummy/tmp/cache/assets/DF2/510/sprockets%2F5a5aaf00efdb1d335653eee92a8fa4f0 +0 -0
- data/test/dummy/tmp/cache/assets/E0A/580/sprockets%2F878dee3cc5c2fbf2e38162d512fefc8e +0 -0
- data/test/dummy/tmp/devmail.pstore +0 -0
- data/test/dummy/tmp/pids/server.pid +1 -0
- data/test/test_helper.rb +15 -0
- metadata +164 -95
- data/Gemfile +0 -3
- data/app/controllers/devmail/development_mails_controller.rb +0 -36
- data/app/models/devmail/dev_mail.rb +0 -29
- data/app/views/devmail/development_mails/index.html.erb +0 -25
- data/app/views/devmail/development_mails/show.html.erb +0 -21
- data/app/views/layouts/devmail/devmail.html.erb +0 -25
- data/config/initializers/development_mail_interceptor.rb +0 -2
- data/lib/devmail/development_mail_interceptor.rb +0 -30
@@ -1,29 +0,0 @@
|
|
1
|
-
module Devmail
|
2
|
-
class DevMail
|
3
|
-
include Mongoid::Document
|
4
|
-
include Mongoid::Timestamps
|
5
|
-
|
6
|
-
field :from, :type => Array
|
7
|
-
field :to, :type => Array
|
8
|
-
field :cc, :type => Array
|
9
|
-
field :bcc, :type => Array
|
10
|
-
field :header
|
11
|
-
field :sender
|
12
|
-
field :subject
|
13
|
-
field :reply_to, :type => Array
|
14
|
-
field :text_part
|
15
|
-
field :html_part
|
16
|
-
field :multipart, :type => Boolean
|
17
|
-
field :content_transfer_encoding
|
18
|
-
|
19
|
-
field :serialized_mail
|
20
|
-
|
21
|
-
def mail
|
22
|
-
Mail::Message.from_yaml(self.serialized_mail)
|
23
|
-
end
|
24
|
-
|
25
|
-
def mail=(m)
|
26
|
-
self.serialized_mail = m.to_yaml
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
@@ -1,25 +0,0 @@
|
|
1
|
-
<h1>Development e-mails captured:</h1>
|
2
|
-
|
3
|
-
<table>
|
4
|
-
<tr>
|
5
|
-
<th>Sent at</th>
|
6
|
-
<th>From</th>
|
7
|
-
<th>To</th>
|
8
|
-
<th>Subject</th>
|
9
|
-
<th></th>
|
10
|
-
</tr>
|
11
|
-
<% for mail in @mails do -%>
|
12
|
-
<tr>
|
13
|
-
<td><%= mail.created_at.in_time_zone %></td>
|
14
|
-
<td><%= mail.from.join(", ") %></td>
|
15
|
-
<td><%= mail.to.join(", ") %></td>
|
16
|
-
<td><%= mail.subject %></td>
|
17
|
-
<td><%= link_to "Details", development_mail_path(mail) %>,
|
18
|
-
<%= link_to "Delete", development_mail_path(mail), :confirm => 'Are you sure?', :method => :delete %>
|
19
|
-
</td>
|
20
|
-
</tr>
|
21
|
-
<% end -%>
|
22
|
-
</table>
|
23
|
-
|
24
|
-
<%= link_to "Clear", clear_development_mails_path,
|
25
|
-
:confirm => "Are you sure? This will remove all stored emails." %>
|
@@ -1,21 +0,0 @@
|
|
1
|
-
<h1>Development email</h1>
|
2
|
-
|
3
|
-
<p><b>Sent at:</b> <%= @mail.created_at.in_time_zone %></p>
|
4
|
-
<p><b>From:</b> <%= @mail.from.join(", ") %></p>
|
5
|
-
<p><b>To:</b> <%= @mail.to.join(", ") %></p>
|
6
|
-
<p><b>Subject:</b> <%= @mail.subject %></p>
|
7
|
-
<% if @mail.multipart? -%>
|
8
|
-
<p><b>Text part:</b><br />
|
9
|
-
<%= @mail.text_part.gsub(/\n/, "<br />").html_safe %>
|
10
|
-
</p>
|
11
|
-
<p>
|
12
|
-
<b><%= link_to "HTML part", html_part_development_mail(@mail) %></b>
|
13
|
-
</p>
|
14
|
-
<% else -%>
|
15
|
-
<p><b>Body:</b><br />
|
16
|
-
<%= @mail.text_part.gsub(/\n/, "<br />").html_safe %>
|
17
|
-
</p>
|
18
|
-
<% end -%>
|
19
|
-
|
20
|
-
<%= link_to "Back to list", development_mails_path %>
|
21
|
-
<%= link_to 'Delete', development_mail_path(@mail), :confirm => 'Are you sure?', :method => :delete %>
|
@@ -1,25 +0,0 @@
|
|
1
|
-
<!DOCTYPE html>
|
2
|
-
<html>
|
3
|
-
<head>
|
4
|
-
<title>Development Emails</title>
|
5
|
-
<%= stylesheet_link_tag :all %>
|
6
|
-
<%= javascript_include_tag :defaults %>
|
7
|
-
<%= csrf_meta_tag %>
|
8
|
-
<style type="text/css">
|
9
|
-
table td, table th {
|
10
|
-
border: 1px solid #ccc;
|
11
|
-
padding: 5px 10px;
|
12
|
-
}
|
13
|
-
table {
|
14
|
-
border-collapse: collapse;
|
15
|
-
border-spacing: 0;
|
16
|
-
}
|
17
|
-
</style>
|
18
|
-
</head>
|
19
|
-
<body>
|
20
|
-
|
21
|
-
<%= yield %>
|
22
|
-
|
23
|
-
</body>
|
24
|
-
</html>
|
25
|
-
|
@@ -1,30 +0,0 @@
|
|
1
|
-
module Devmail
|
2
|
-
class DevelopmentMailInterceptor
|
3
|
-
def self.delivering_email(message)
|
4
|
-
dm = DevMail.new
|
5
|
-
|
6
|
-
dm.from = message.from
|
7
|
-
dm.to = message.to
|
8
|
-
dm.cc = message.cc
|
9
|
-
dm.bcc = message.bcc
|
10
|
-
dm.sender = message.sender
|
11
|
-
dm.subject = message.subject
|
12
|
-
dm.reply_to = message.reply_to
|
13
|
-
|
14
|
-
dm.multipart = message.multipart?
|
15
|
-
|
16
|
-
if message.multipart?
|
17
|
-
dm.text_part = message.text_part.decoded
|
18
|
-
dm.html_part = message.html_part.decoded
|
19
|
-
else
|
20
|
-
dm.text_part = message.decoded
|
21
|
-
end
|
22
|
-
|
23
|
-
dm.mail = message
|
24
|
-
|
25
|
-
dm.save
|
26
|
-
|
27
|
-
message
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|