diff --git a/app/models/dmsf_mailer.rb b/app/models/dmsf_mailer.rb index 1abf8883..252559f4 100644 --- a/app/models/dmsf_mailer.rb +++ b/app/models/dmsf_mailer.rb @@ -158,9 +158,19 @@ def workflow_notification(user, workflow, revision, subject_id, text1_id, text2_ @notice = notice @author = revision.dmsf_workflow_assigned_by_user @author ||= User.anonymous - mail to: user, - subject: - "[#{@project.name} - #{l(:field_label_dmsf_workflow)}] #{@workflow.name} #{l(subject_id)} #{step_name}" + skip_no_self_notified = false + begin + # We need to switch off no_self_notified temporarily otherwise the email won't be sent + if (@author == user) && @author.pref.no_self_notified + @author.pref.no_self_notified = false + skip_no_self_notified = true + end + mail to: user, + subject: + "[#{@project.name} - #{l(:field_label_dmsf_workflow)}] #{@workflow.name} #{l(subject_id)} #{step_name}" + ensure + @author.pref.no_self_notified = true if skip_no_self_notified + end end # force_notification = true => approval workflow's notifications