diff options
author | terry%mozilla.org <> | 2000-01-14 07:23:23 +0100 |
---|---|---|
committer | terry%mozilla.org <> | 2000-01-14 07:23:23 +0100 |
commit | ae76aeb8cd3e8fc1350e73bd01f5effaaf726d28 (patch) | |
tree | de6202712aa97f6acc9c9e9c40ac0404cc735a7c | |
parent | 000687a8129f2d52fae8baf2e535db97eebd4c54 (diff) | |
download | bugzilla-ae76aeb8cd3e8fc1350e73bd01f5effaaf726d28.tar.gz bugzilla-ae76aeb8cd3e8fc1350e73bd01f5effaaf726d28.tar.xz |
Send one last email notification to people when a bug gets reassigned
away from them or they get removed from the CC list.
-rwxr-xr-x | process_bug.cgi | 5 | ||||
-rwxr-xr-x | processmail | 20 |
2 files changed, 19 insertions, 6 deletions
diff --git a/process_bug.cgi b/process_bug.cgi index 36bfe71be..c1c7e63a4 100755 --- a/process_bug.cgi +++ b/process_bug.cgi @@ -678,6 +678,9 @@ The changes made were: if ($col eq 'assigned_to' || $col eq 'qa_contact') { $old = DBID_to_name($old) if $old != 0; $new = DBID_to_name($new) if $new != 0; + $origcclist .= ",$old"; # make sure to send mail to people + # if they are going to no longer get + # updates about this bug. } if ($col eq 'product') { RemoveVotes($id, @@ -694,7 +697,7 @@ The changes made were: print "<TABLE BORDER=1><TD><H2>Changes to bug $id submitted</H2>\n"; SendSQL("unlock tables"); - system("./processmail $id $::FORM{'who'}"); + system("./processmail", "-forcecc", $origcclist, $id, $::FORM{'who'}); print "<TD><A HREF=\"show_bug.cgi?id=$id\">Back To BUG# $id</A></TABLE>\n"; foreach my $k (keys(%dependencychanged)) { diff --git a/processmail b/processmail index eedfb0339..8e0b7c29f 100755 --- a/processmail +++ b/processmail @@ -36,6 +36,8 @@ $::lockcount = 0; my $regenerate = 0; my $nametoexclude = ""; +my @forcecc; + sub Lock { if ($::lockcount <= 0) { $::lockcount = 0; @@ -305,6 +307,7 @@ sub ProcessOneBug { foreach my $v (split(/,/, "$::bug{'cclist'},$::bug{'voterlist'}")) { push @combinedcc, $v; } + push (@combinedcc, (@forcecc)); my $cclist = fixaddresses("cc", \@combinedcc); my $logstr = "Bug $i $verb"; if ($tolist ne "" || $cclist ne "") { @@ -360,11 +363,6 @@ if (open(FID, "<data/nomail")) { close FID; } -if (($#ARGV < 0) || ($#ARGV > 1)) { - print "Usage error: processmail {bugid} {nametoexclude}\nOr: processmail regenerate\n"; - exit; -} - # To recreate the shadow database, run "processmail regenerate" . if ($ARGV[0] eq "regenerate") { $regenerate = 1; @@ -383,6 +381,18 @@ if ($ARGV[0] eq "regenerate") { exit; } +if ($ARGV[0] eq "-forcecc") { + shift(@ARGV); + foreach my $i (split(/,/, shift(@ARGV))) { + push(@forcecc, trim($i)); + } +} + +if (($#ARGV < 0) || ($#ARGV > 1)) { + print "Usage error: processmail {bugid} {nametoexclude}\nOr: processmail regenerate\n"; + exit; +} + if ($#ARGV == 1) { $nametoexclude = lc($ARGV[1]); } |