mirror of
https://github.com/discourse/discourse.git
synced 2024-11-23 06:29:30 +08:00
29 lines
802 B
Ruby
29 lines
802 B
Ruby
# Help us build an email
|
|
module EmailBuilder
|
|
|
|
def build_email(to, email_key, params={})
|
|
params[:site_name] = SiteSetting.title
|
|
params[:base_url] = Discourse.base_url
|
|
params[:user_preferences_url] = "#{Discourse.base_url}/user_preferences"
|
|
|
|
body = I18n.t("#{email_key}.text_body_template", params)
|
|
|
|
# Are we appending an unsubscribe link?
|
|
if params[:add_unsubscribe_link]
|
|
body << "\n"
|
|
body << I18n.t("unsubscribe_link", params)
|
|
headers 'List-Unsubscribe' => "<#{params[:user_preferences_url]}>"
|
|
end
|
|
|
|
mail_args = {
|
|
to: to,
|
|
subject: I18n.t("#{email_key}.subject_template", params),
|
|
body: body
|
|
}
|
|
mail_args[:from] = params[:from] || SiteSetting.notification_email
|
|
mail_args[:charset] = 'UTF-8'
|
|
mail(mail_args)
|
|
end
|
|
|
|
end
|