summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--skins/standard/global.css5
-rw-r--r--template/en/default/bug/comments.html.tmpl84
2 files changed, 44 insertions, 45 deletions
diff --git a/skins/standard/global.css b/skins/standard/global.css
index b729b1aad..ce1882827 100644
--- a/skins/standard/global.css
+++ b/skins/standard/global.css
@@ -244,7 +244,10 @@ div#docslinks {
margin-bottom: 2em;
}
-.bz_comment_head {
+.bz_first_comment {
+}
+
+.bz_comment_head, .bz_first_comment_head {
background-color: #e0e0e0;
}
.bz_comment_hilite pre {
diff --git a/template/en/default/bug/comments.html.tmpl b/template/en/default/bug/comments.html.tmpl
index 5df295423..1a8b64c99 100644
--- a/template/en/default/bug/comments.html.tmpl
+++ b/template/en/default/bug/comments.html.tmpl
@@ -147,53 +147,49 @@
[% BLOCK a_comment %]
[% IF NOT comment.isprivate || isinsider %]
<div class="bz_comment[% " bz_private" IF comment.isprivate %]
- [% " bz_comment_hilite" IF marks.$count %]">
+ [% " bz_comment_hilite" IF marks.$count %]
+ [% " bz_first_comment" IF count == description %]">
[% IF count == description %]
- <table>
- <tr>
- <th align="left">
- <b><a name="c0" href="show_bug.cgi?id=[% bug.bug_id %]#c0">
- Description</a>:</b>
- [% IF mode == "edit" %]
- [%%]<script type="text/javascript"><!--
- addCollapseLink(0);
- addReplyLink(0);
- //--></script>
- [% END %]
- </th>
- <td align="left" width="30%">
- <b>Opened:</b> [% bug.creation_ts FILTER time %]
- </td>
- </tr>
- </table>
+ [% class_name = "bz_first_comment_head" %]
+ [% comment_label = "" %]
+ [% comment_link = "Description" %]
+ [% decoration = "" %]
[% ELSE %]
- <span class="bz_comment_head">
- <span class="comment_rule">-------</span> <i>Comment
- <a name="c[% count %]" href="show_bug.cgi?id=[% bug.bug_id %]#c[% count %]">
- #[% count %]</a> From
- <span class="vcard">
- <a class="fn email" href="mailto:[% comment.author.email FILTER html %]">
- [% (comment.author.name || comment.author.login) FILTER html %]
- </a>
- </span>
- [% FOREACH group = comment.author.direct_group_membership %]
- [% NEXT UNLESS group.icon_url %]
- <img src="[% group.icon_url FILTER html %]"
- alt="[% group.name FILTER html %]"
- title="[% group.name FILTER html %] - [% group.description FILTER html %]">
- [% END %]
-
- [%+ comment.time FILTER time %]
- </i>
- [% IF mode == "edit" %]
- <script type="text/javascript"><!--
- addCollapseLink([% count %]);
- addReplyLink([% count %]); //--></script>
- [% END %]
- <span class="comment_rule">-------</span>
- </span>
+ [% class_name = "bz_comment_head" %]
+ [% comment_label = "Comment" %]
+ [% comment_link = "#" _ count %]
+ [% decoration = '<span class="comment_rule">-------</span>' %]
[% END %]
-
+
+ <span class="[% class_name FILTER html %]">
+ [%# Do not filter decoration as it's a real HTML tag. No XSS risk. %]
+ [% decoration FILTER none %]
+ <i>[% comment_label FILTER html %]
+ <a name="c[% count %]" href="show_bug.cgi?id=[% bug.bug_id %]#c[% count %]">
+ [% comment_link FILTER html %]</a> From
+ <span class="vcard">
+ <a class="fn email" href="mailto:[% comment.author.email FILTER html %]">
+ [% (comment.author.name || comment.author.login) FILTER html %]
+ </a>
+ </span>
+ [% FOREACH group = comment.author.direct_group_membership %]
+ [% NEXT UNLESS group.icon_url %]
+ <img src="[% group.icon_url FILTER html %]"
+ alt="[% group.name FILTER html %]"
+ title="[% group.name FILTER html %] - [% group.description FILTER html %]">
+ [% END %]
+
+ [%+ comment.time FILTER time %]</i>
+
+ [% IF mode == "edit" %]
+ <script type="text/javascript"><!--
+ addCollapseLink([% count %]);
+ addReplyLink([% count %]); //-->
+ </script>
+ [% END %]
+ [%+ decoration FILTER none %]
+ </span>
+
[% IF mode == "edit" && isinsider %]
<i>
<input type="hidden" name="oisprivate-[% count %]"