intial commit, for 'en' locale only, for changeset_comment_notification only, doesn't load images properly yet
This commit is contained in:
parent
442994d46d
commit
e6d19586df
3 changed files with 151 additions and 25 deletions
|
@ -1,3 +1,5 @@
|
|||
require "base64"
|
||||
|
||||
class Notifier < ActionMailer::Base
|
||||
default :from => EMAIL_FROM,
|
||||
:return_path => EMAIL_RETURN_PATH,
|
||||
|
@ -154,10 +156,13 @@ class Notifier < ActionMailer::Base
|
|||
|
||||
def changeset_comment_notification(comment, recipient)
|
||||
with_recipient_locale recipient do
|
||||
@root_url = root_url(:host => SERVER_URL)
|
||||
@changeset_url = changeset_url(comment.changeset, :host => SERVER_URL)
|
||||
@comment = comment.body
|
||||
@owner = recipient == comment.changeset.user
|
||||
@commenter = comment.author.display_name
|
||||
@commenter_url = user_url(comment.author.display_name, :host => SERVER_URL)
|
||||
@commenter_thumbnail_src = comment.author.image.url(:small, :host => SERVER_URL)
|
||||
@changeset_comment = comment.changeset.tags["comment"].presence
|
||||
@time = comment.created_at
|
||||
@changeset_author = comment.changeset.user.display_name
|
||||
|
@ -168,6 +173,12 @@ class Notifier < ActionMailer::Base
|
|||
I18n.t("notifier.changeset_comment_notification.commented.subject_other", :commenter => @commenter)
|
||||
end
|
||||
|
||||
attachments.inline['osm_logo_30x30.png'] = {
|
||||
mime_type: 'image/png',
|
||||
encoding: 'base64',
|
||||
content: @@osm_logo_png_bytes,
|
||||
}
|
||||
|
||||
mail :to => recipient.email, :subject => subject
|
||||
end
|
||||
end
|
||||
|
@ -191,4 +202,60 @@ class Notifier < ActionMailer::Base
|
|||
EMAIL_FROM
|
||||
end
|
||||
end
|
||||
|
||||
# FIXME - 2016-12-28 - saintamh - someone please show me a better way to
|
||||
# include this blob in here. If I save it under app/assets, how do I get a
|
||||
# path to it in a portable way?
|
||||
@@osm_logo_png_bytes = <<EOS
|
||||
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
|
||||
EOS
|
||||
|
||||
end
|
||||
|
|
|
@ -1,20 +1,74 @@
|
|||
<p><%= t 'notifier.changeset_comment_notification.greeting' %></p>
|
||||
|
||||
<p>
|
||||
<% if @owner %>
|
||||
<%= t "notifier.changeset_comment_notification.commented.your_changeset", :commenter => @commenter, :time => @time %>
|
||||
<% else %>
|
||||
<%= t "notifier.changeset_comment_notification.commented.commented_changeset", :commenter => @commenter, :time => @time, :changeset_author => @changeset_author %>
|
||||
<% end %>
|
||||
<% if @changeset_comment %>
|
||||
<%= t "notifier.changeset_comment_notification.commented.partial_changeset_with_comment", :changeset_comment => @changeset_comment %>
|
||||
<% else %>
|
||||
<%= t "notifier.changeset_comment_notification.commented.partial_changeset_without_comment" %>
|
||||
<% end %>
|
||||
</p>
|
||||
|
||||
==
|
||||
<%= @comment.to_html %>
|
||||
==
|
||||
|
||||
<p><%= raw t 'notifier.changeset_comment_notification.details', :url => link_to(@changeset_url, @changeset_url) %></p>
|
||||
<html>
|
||||
<head>
|
||||
<title></title>
|
||||
<meta charset="UTF-8"></meta>
|
||||
</head>
|
||||
<body style="padding: 0; margin: 0">
|
||||
<table border="0" cellspacing="0" cellpadding="0" width="100%" bgcolor="#eee" style="color: #222; font-family: 'Helvetica Neue', Arial, sans-serif; font-size: 14px; text-align: center">
|
||||
<tr>
|
||||
<td>
|
||||
<table align="center" width="600" cellspacing="10" style="color: #222; font-family: 'Helvetica Neue', Arial, sans-serif; font-size: 14px; margin-left: auto; margin-right: auto">
|
||||
<tr>
|
||||
<td width="30">
|
||||
<a href="<%= @root_url %>" target="_blank">
|
||||
<%= image_tag attachments["osm_logo_30x30.png"].url, alt: "OpenStreetMap logo", title: "OpenStreetMap", height: "30", width: "30", border: "0" %>
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="<%= @root_url %>" target="_blank" style="text-decoration: none; color: #000">
|
||||
<h1 style="font-size: 18px; font-weight: 600; margin: 0; text-align: left">OpenStreetMap</h1>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2">
|
||||
<table width="100%" bgcolor="#fff" cellspacing="15" style="color: #222; font-family: 'Helvetica Neue', Arial, sans-serif; font-size: 14px; border: solid 1px #ccc">
|
||||
<tr>
|
||||
<td>
|
||||
<p>
|
||||
<% if @owner %>
|
||||
<%= t "notifier.changeset_comment_notification.commented.your_changeset_html", :commenter => @commenter, :commenter_url => @commenter_url, :time => @time %>
|
||||
<% else %>
|
||||
<%= t "notifier.changeset_comment_notification.commented.commented_changeset_html", :commenter => @commenter, :commenter_url => @commenter_url, :time => @time, :changeset_author => @changeset_author %>
|
||||
<% end %>
|
||||
<% if @changeset_comment %>
|
||||
<%= t "notifier.changeset_comment_notification.commented.partial_changeset_with_comment_html", :changeset_comment => @changeset_comment %>
|
||||
<% else %>
|
||||
<%= t "notifier.changeset_comment_notification.commented.partial_changeset_without_comment" %>
|
||||
<% end %>
|
||||
</p>
|
||||
<table style="color: #222; font-family: 'Helvetica Neue', Arial, sans-serif; font-size: 15px; font-style: italic; margin: 15px; background-color: #eee" cellpadding="10">
|
||||
<tr>
|
||||
<td style="vertical-align: top">
|
||||
<a href="<%= @commenter_url %>" target="_blank"><img src="<%= @commenter_thumbnail_src %>"></a>
|
||||
</td>
|
||||
<td style="vertical-align: top">
|
||||
<%= @comment.to_html %>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>
|
||||
<p><%= raw t 'notifier.changeset_comment_notification.details_html', :url => link_to(@changeset_url, @changeset_url) %></p>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center">
|
||||
<p>
|
||||
<a style="color: #222" href="<%= @changeset_url %>">Unsubscribe</a>
|
||||
from updates to this changeset
|
||||
</p>
|
||||
<p style="margin-bottom: 10px">
|
||||
<a href="https://www.openstreetmap.org/" target="_blank" style="color: #222">OpenStreetMap.org</a>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1315,10 +1315,20 @@ en:
|
|||
subject_own: "[OpenStreetMap] %{commenter} has commented on one of your changesets"
|
||||
subject_other: "[OpenStreetMap] %{commenter} has commented on a changeset you are interested in"
|
||||
your_changeset: "%{commenter} has left a comment on one of your changesets created at %{time}"
|
||||
your_changeset_html: '<a href="%{commenter_url}" target="_blank" style="text-decoration: none; color: #222"><strong>%{commenter}</strong></a>
|
||||
has left a comment on one of your changesets
|
||||
created at %{time}'
|
||||
commented_changeset: "%{commenter} has left a comment on a map changeset you are watching created by %{changeset_author} at %{time}"
|
||||
commented_changeset_html: '<a href="%{commenter_url}" target="_blank" style="text-decoration: none; color: #222"><strong>%{commenter}</strong></a>
|
||||
has left a comment on a map changeset you are watching created by
|
||||
%{changeset_author}
|
||||
at %{time}'
|
||||
partial_changeset_with_comment: "with comment '%{changeset_comment}'"
|
||||
partial_changeset_with_comment_html: 'with comment <em>%{changeset_comment}</em>'
|
||||
partial_changeset_without_comment: "without comment"
|
||||
details: "More details about the changeset can be found at %{url}."
|
||||
details_html: 'More details about the changeset can be found at
|
||||
<nobr>%{url}</nobr>.'
|
||||
message:
|
||||
inbox:
|
||||
title: "Inbox"
|
||||
|
@ -2288,11 +2298,6 @@ en:
|
|||
against_oneway_without_exit: Go against one-way on %{name}
|
||||
end_oneway_without_exit: End of one-way on %{name}
|
||||
roundabout_with_exit: At roundabout take exit %{exit} onto %{name}
|
||||
turn_left_with_exit: At roundabout turn left onto %{name}
|
||||
slight_left_with_exit: At roundabout slight left onto %{name}
|
||||
turn_right_with_exit: At roundabout turn right onto %{name}
|
||||
slight_right_with_exit: At roundabout slight right onto %{name}
|
||||
continue_with_exit: At roundabout continue straight onto %{name}
|
||||
unnamed: "unnamed road"
|
||||
courtesy: "Directions courtesy of %{link}"
|
||||
time: "Time"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue