class NotificationMailer < ApplicationMailer default to: Proc.new { @user.email } after_action :create_commentaire_for_notification, only: :send_notification def send_notification(dossier, mail_template, attestation = nil) vars_mailer(dossier) @object = mail_template.object_for_dossier dossier @body = mail_template.body_for_dossier dossier if attestation.present? attachments['attestation.pdf'] = attestation end mail(subject: @object) { |format| format.html { @body } } end def new_answer(dossier) send_mail dossier, "Nouveau message pour votre dossier TPS nº #{dossier.id}" end private def create_commentaire_for_notification Commentaire.create( dossier: @dossier, email: I18n.t("dynamics.contact_email"), body: ["[#{@object}]", @body].join("

") ) end def vars_mailer(dossier) @dossier = dossier @user = dossier.user end def send_mail(dossier, subject) vars_mailer dossier mail(subject: subject) end end