diff options
author | Michał Zając <gitlab.com@quintasan.pl> | 2019-05-16 14:59:02 +0300 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2019-05-16 14:59:02 +0300 |
commit | 411f545ce6a88db8370e639989d9c8f6d3621cbe (patch) | |
tree | b9fe7fa6acc5a18d0aa3a87a39481521028557d0 /app/helpers/emails_helper.rb | |
parent | 2d0f349baf83bee47c062896ac71a678e3b5f77b (diff) |
Include MR information if possible when emailing notification of closing an issue
Diffstat (limited to 'app/helpers/emails_helper.rb')
-rw-r--r-- | app/helpers/emails_helper.rb | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/app/helpers/emails_helper.rb b/app/helpers/emails_helper.rb index 96471d15aac..dc0e5511fcf 100644 --- a/app/helpers/emails_helper.rb +++ b/app/helpers/emails_helper.rb @@ -91,6 +91,28 @@ module EmailsHelper ].join(';') end + def closure_reason_text(closed_via, format: nil) + case closed_via + when MergeRequest + merge_request = MergeRequest.find(closed_via[:id]).present + + case format + when :html + " via merge request #{link_to(merge_request.to_reference, merge_request.web_url)}" + else + # If it's not HTML nor text then assume it's text to be safe + " via merge request #{merge_request.to_reference} (#{merge_request.web_url})" + end + when String + # Technically speaking this should be Commit but per + # https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/15610#note_163812339 + # we can't deserialize Commit without custom serializer for ActiveJob + " via #{closed_via}" + else + "" + end + end + # "You are receiving this email because #{reason}" def notification_reason_text(reason) string = case reason |