]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 946565 - Bug Mail does not correct notify when two people have made changes
authorSimon Green <sgreen@redhat.com>
Thu, 2 Jan 2014 22:24:25 +0000 (08:24 +1000)
committerSimon Green <sgreen@redhat.com>
Thu, 2 Jan 2014 22:24:25 +0000 (08:24 +1000)
r=LpSolit, a=simon

Bugzilla/BugMail.pm
template/en/default/email/bugmail.html.tmpl
template/en/default/email/bugmail.txt.tmpl

index 442d19fcd80e7a0c586f1e54805b583a0ba52b8f..5a2c9b788e03b71afcb96648c682736d5686b4a2 100644 (file)
@@ -87,15 +87,17 @@ sub Send {
 
     if ($params->{dep_only}) {
         push(@diffs, { field_name => 'bug_status',
-                       old => $params->{changes}->{bug_status}->[0],
-                       new => $params->{changes}->{bug_status}->[1],
+                       old        => $params->{changes}->{bug_status}->[0],
+                       new        => $params->{changes}->{bug_status}->[1],
                        login_name => $changer->login,
-                       blocker => $params->{blocker} },
+                       who        => $changer,
+                       blocker    => $params->{blocker} },
                      { field_name => 'resolution',
-                       old => $params->{changes}->{resolution}->[0],
-                       new => $params->{changes}->{resolution}->[1],
+                       old        => $params->{changes}->{resolution}->[0],
+                       new        => $params->{changes}->{resolution}->[1],
                        login_name => $changer->login,
-                       blocker => $params->{blocker} });
+                       who        => $changer,
+                       blocker    => $params->{blocker} });
     }
     else {
         push(@diffs, _get_diffs($bug, $end, \%user_cache));
@@ -494,7 +496,10 @@ sub _get_new_bugmail_fields {
         # If there isn't anything to show, don't include this header.
         next unless $value;
 
-        push(@diffs, {field_name => $name, new => $value});
+        push(@diffs, {
+            field_name => $name,
+            who        => $bug->reporter,
+            new        => $value});
     }
 
     return @diffs;
index 5d31d27a0e6ab6263372f4ffb358c73f98e207cc..b361b0889814ae99920344c73d284d62e43c6ac2 100644 (file)
@@ -51,8 +51,8 @@
   [% SET in_table = 0 %]
   [% last_changer = 0 %]
     [% FOREACH change = diffs %]
-      [% IF !isnew && changer.id != last_changer %]
-        [% last_changer = changer.id %]
+      [% IF !isnew && change.who.id != last_changer %]
+        [% last_changer = change.who.id %]
         [% IF in_table == 1 %]
           </table>
           [% SET in_table = 0 %]
index 92c9a33cbdba1f34140b65ae7fa07b8af237f20a..999fab91111837a3a9ec38dee2154a86bdfcddfb 100644 (file)
@@ -36,18 +36,21 @@ You are receiving this mail because:
 
 [% BLOCK generate_diffs %]
   [% urlbase %]show_bug.cgi?id=[% bug.id %]
-
 [%+ last_changer = 0 %]
+[% IF isnew %]
+[%+ +%]
+[% END %]
   [% FOREACH change = diffs %]
-    [% IF !isnew && changer.id != last_changer %]
-      [% last_changer = changer.id %]
+    [% IF !isnew && change.who.id != last_changer %]
+      [% last_changer = change.who.id %]
       [% IF change.blocker %]
         [% terms.Bug %] [%+ bug.id %] depends on [% terms.bug %] [%+ change.blocker.id %], which changed state.
 
 [%+ terms.Bug %] [%+ change.blocker.id %] Summary: [% change.blocker.short_desc %]
 [%+ urlbase %]show_bug.cgi?id=[% change.blocker.id %]
       [% ELSE %]
-        [%~ changer.identity %] changed:
+
+[% change.who.identity %] changed:
       [% END %]
 
            What    |Removed                     |Added