demarches-normaliennes/app/mailers/notification_mailer.rb

40 lines
923 B
Ruby
Raw Normal View History

2015-12-15 11:02:07 +01:00
class NotificationMailer < ApplicationMailer
default to: Proc.new { @user.email }
after_action :create_commentaire_for_notification, only: :send_notification
2017-05-27 01:19:33 +02:00
def send_notification(dossier, mail_template)
vars_mailer(dossier)
2017-05-27 01:18:56 +02:00
@object = mail_template.object_for_dossier dossier
@body = mail_template.body_for_dossier dossier
2017-05-27 01:18:56 +02:00
mail(subject: @object) { |format| format.html { @body } }
end
2017-05-27 01:19:33 +02:00
def new_answer(dossier)
send_mail dossier, "Nouveau message pour votre dossier TPS nº #{dossier.id}"
2015-12-15 11:41:50 +01:00
end
private
def create_commentaire_for_notification
Commentaire.create(
dossier: @dossier,
email: I18n.t("dynamics.contact_email"),
2017-05-27 01:18:56 +02:00
body: ["[#{@object}]", @body].join("<br><br>")
)
end
2017-05-27 01:19:33 +02:00
def vars_mailer(dossier)
2015-12-15 11:02:07 +01:00
@dossier = dossier
2015-12-15 11:41:50 +01:00
@user = dossier.user
end
2017-05-27 01:19:33 +02:00
def send_mail(dossier, subject)
2015-12-15 11:41:50 +01:00
vars_mailer dossier
2015-12-15 11:02:07 +01:00
mail(subject: subject)
2015-12-15 11:02:07 +01:00
end
end