diff options
-rw-r--r-- | Bugzilla/BugMail.pm | 12 | ||||
-rw-r--r-- | defparams.pl | 7 |
2 files changed, 18 insertions, 1 deletions
diff --git a/Bugzilla/BugMail.pm b/Bugzilla/BugMail.pm index d9dbb770b..6b77f6d94 100644 --- a/Bugzilla/BugMail.pm +++ b/Bugzilla/BugMail.pm @@ -46,6 +46,13 @@ my $last_changed; my @excludedAddresses = (); +my $sitespec = '@'.Param('urlbase'); +$sitespec =~ s/:\/\//\./; # Make the protocol look like part of the domain +$sitespec =~ s/^([^:\/]+):(\d+)/$1/; # Remove a port number, to relocate +if ($2) { + $sitespec = "-$2$sitespec"; # Put the port number back in, before the '@' +} + # disable email flag for offline debugging work my $enableSendMail = 1; @@ -854,6 +861,11 @@ sub NewProcessOnePerson ($$$$$$$$$$$$$) { $substs{"reasonsheader"} = join(" ", @reasons); $substs{"reasonsbody"} = $reasonsbody; $substs{"space"} = " "; + if ($isnew) { + $substs{'threadingmarker'} = "Message-ID: <bug-$id-$userid$sitespec>"; + } else { + $substs{'threadingmarker'} = "In-Reply-To: <bug-$id-$userid$sitespec>"; + } my $template = Param("newchangedmail"); diff --git a/defparams.pl b/defparams.pl index 206e89e59..29c4d27ad 100644 --- a/defparams.pl +++ b/defparams.pl @@ -719,13 +719,18 @@ To use the wonders of Bugzilla, you can use the following: 'getting the email, suitable for use in an email header (such ' . 'as X-Bugzilla-Reason). %reasonsbody% is replaced by text that ' . 'explains why the user is getting the email in more user ' . - 'friendly text than %reasonsheader%. %<i>anythingelse</i>% gets ' . + 'friendly text than %reasonsheader%. ' . + '%threadingmarker% will become either a Message-ID line (for ' . + 'new-bug messages) or a In-Reply-To line (for bug-change ' . + 'messages). ' . + '%<i>anythingelse</i>% gets ' . 'replaced by the definition of that parameter (as defined on ' . 'this page).', type => 'l', default => 'From: bugzilla-daemon To: %to% Subject: [Bug %bugid%] %neworchanged%%summary% +%threadingmarker% X-Bugzilla-Reason: %reasonsheader% %urlbase%show_bug.cgi?id=%bugid% |