? 369429-10.diff
? 369429-7.diff
? 369429-8.diff
? 369429-9.diff
? charset.cgi
? out
Index: Bugzilla/Bug.pm
===================================================================
RCS file: /cvsroot/mozilla/webtools/bugzilla/Bugzilla/Bug.pm,v
retrieving revision 1.171
diff -u -r1.171 Bug.pm
--- Bugzilla/Bug.pm	28 Jan 2007 21:19:12 -0000	1.171
+++ Bugzilla/Bug.pm	26 Feb 2007 19:48:27 -0000
@@ -1475,7 +1475,6 @@
         my %comment = %$comment_ref;
 
         $comment{'email'} .= Bugzilla->params->{'emailsuffix'};
-        $comment{'name'} = $comment{'name'} || $comment{'email'};
 
         # If raw data is requested, do not format 'special' comments.
         $comment{'body'} = format_comment(\%comment) unless $raw;
Index: Bugzilla/BugMail.pm
===================================================================
RCS file: /cvsroot/mozilla/webtools/bugzilla/Bugzilla/BugMail.pm,v
retrieving revision 1.104
diff -u -r1.104 BugMail.pm
--- Bugzilla/BugMail.pm	6 Feb 2007 22:02:21 -0000	1.104
+++ Bugzilla/BugMail.pm	26 Feb 2007 19:48:27 -0000
@@ -704,11 +704,11 @@
     foreach my $comment (@$raw_comments) {
         if ($count) {
             $result .= "\n\n--- Comment #$count from ";
-            if ($comment->{'name'} eq $comment->{'email'}) {
-                $result .= $comment->{'email'} . Bugzilla->params->{'emailsuffix'};
-            } else {
+            if ($comment->{'name'}) {
                 $result .= $comment->{'name'} . " <" . $comment->{'email'} .
                            Bugzilla->params->{'emailsuffix'} . ">";
+            } else {
+                $result .= $comment->{'email'} . Bugzilla->params->{'emailsuffix'};
             }
             $result .= "  " . format_time($comment->{'time'}) . " ---\n";
         }
Index: template/en/default/bug/comments.html.tmpl
===================================================================
RCS file: /cvsroot/mozilla/webtools/bugzilla/template/en/default/bug/comments.html.tmpl,v
retrieving revision 1.28
diff -u -r1.28 comments.html.tmpl
--- template/en/default/bug/comments.html.tmpl	17 Oct 2006 19:58:37 -0000	1.28
+++ template/en/default/bug/comments.html.tmpl	26 Feb 2007 19:48:27 -0000
@@ -113,8 +113,11 @@
           <span class="comment_rule">-------</span> <i>Comment
           <a name="c[% count %]" href="show_bug.cgi?id=[% bug.bug_id %]#c[% count %]">
             #[% count %]</a> From 
-          <a href="mailto:[% comment.email FILTER html %]">
-            [% comment.name FILTER html %]</a>
+          <span class="vcard">
+            <a class="fn email" href="mailto:[% comment.email FILTER html %]">
+              [% (comment.name || comment.email) FILTER html %]
+            </a>
+          </span>
           [%+ comment.time FILTER time %] 
           </i>
           [% IF mode == "edit" %]
Index: template/en/default/bug/edit.html.tmpl
===================================================================
RCS file: /cvsroot/mozilla/webtools/bugzilla/template/en/default/bug/edit.html.tmpl,v
retrieving revision 1.97
diff -u -r1.97 edit.html.tmpl
--- template/en/default/bug/edit.html.tmpl	27 Dec 2006 00:55:23 -0000	1.97
+++ template/en/default/bug/edit.html.tmpl	26 Feb 2007 19:48:27 -0000
@@ -673,8 +673,7 @@
         <b>Reporter</b>:
       </td>
       <td>
-        <a href="mailto:[% bug.reporter.email FILTER html %]">
-          [% bug.reporter.identity FILTER html %]</a>
+        [% INCLUDE user_identity user => bug.reporter %]
       </td>
     </tr>
 
@@ -683,8 +682,7 @@
         <b><a href="page.cgi?id=fields.html#assigned_to">Assigned&nbsp;To</a></b>:
       </td>
       <td>
-        <a href="mailto:[% bug.assigned_to.email FILTER html %]">
-           [% bug.assigned_to.identity FILTER html %]</a>
+        [% INCLUDE user_identity user => bug.assigned_to %]
       </td>
     </tr>
 
@@ -705,15 +703,7 @@
         [% ELSE %]
           <input type="hidden" name="qa_contact" id="qa_contact"
                  value="[% bug.qa_contact.login FILTER html %]">
-          <a href="mailto:[% bug.qa_contact.email FILTER html %]">
-            [% IF bug.qa_contact.login && bug.qa_contact.login.length > 30 %]
-              <span title="[% bug.qa_contact.login FILTER html %]">
-                [% bug.qa_contact.identity FILTER truncate(30) FILTER html %]
-              </span>
-            [% ELSE %]
-              [% bug.qa_contact.identity FILTER html %]
-            [% END %]
-          </a>
+          [% INCLUDE user_identity user => bug.qa_contact %]
         [% END %]
       </td>
     </tr>
@@ -837,3 +827,22 @@
   [% size = 0 %]
   [% value = undef %]
 [% END %]
+
+[%############################################################################%]
+[%# Block for user identities. Wraps the information inside of an hCard.     #%]
+[%############################################################################%]
+
+[% BLOCK user_identity %]
+  <span class="vcard">
+    [% IF user.name %]
+      <a class="email" href="mailto:[% user.email FILTER html %]">
+        <span class="fn">[% user.name FILTER html %]</span>
+        &lt;[% user.email FILTER html %]&gt;
+      </a>
+    [% ELSE %]
+      <a class="fn email" href="mailto:[% user.email FILTER html %]">
+        [% user.email FILTER html %]
+      </a>
+    [% END %]
+  </span>
+[% END %]
