Commit 286c0ad1 authored by lpsolit%gmail.com's avatar lpsolit%gmail.com

Bug 219555: 'Format for Printing' page is a mess - Patch by Olav Vitters…

Bug 219555: 'Format for Printing' page is a mess - Patch by Olav Vitters <bugzilla-mozilla@bkor.dhs.org> r=LpSolit a=justdave
parent 58a9182f
hr {margin: 20px auto 40px} hr {margin: 20px auto 40px}
.bz_private { color:darkred } .bz_private { color:darkred }
h1 {
font-size: 2em;
margin-bottom: 10px;
}
/* bugfields is table of all fields and values */
.bugfields {
font-size: small;
background: #eee;
padding: 5px;
border: 1px solid silver;
width: 100%;
}
.bugfields tr {
vertical-align: top;
}
.bugfields th {
width: 10em;
text-align: left;
font-weight: normal;
line-height: 150%;
}
.bugfields td {
font-weight: bold;
line-height: 150%;
}
.bugfields .rightcell {
padding-left: 10px;
}
/* set line-height to normal for nested tables of bugfields table */
.bugfields table th, .bugfields table td {
line-height: 100%;
width: auto;
}
.bugfields table.timetracking th, .bugfields table.timetracking td {
width: 10em;
}
...@@ -18,13 +18,17 @@ ...@@ -18,13 +18,17 @@
# #
# Contributor(s): Terry Weissman <terry@mozilla.org> # Contributor(s): Terry Weissman <terry@mozilla.org>
# Gervase Markham <gerv@gerv.net> # Gervase Markham <gerv@gerv.net>
# Toms Baugis <toms@myrealbox.com>
# Olav Vitters <olav@bkor.dhs.org>
#%] #%]
[% PROCESS "global/field-descs.none.tmpl" %] [% PROCESS "global/field-descs.none.tmpl" %]
[% PROCESS global/header.html.tmpl [% PROCESS global/header.html.tmpl
title = "Full Text $terms.Bug Listing" title = "Full Text $terms.Bug Listing"
style_urls = [ "skins/standard/show_multiple.css" ] h1 = ""
style_urls = ["skins/standard/show_multiple.css",
"skins/standard/buglist.css"]
%] %]
[% PROCESS bug/time.html.tmpl %] [% PROCESS bug/time.html.tmpl %]
[% IF bugs.first %] [% IF bugs.first %]
...@@ -46,154 +50,198 @@ ...@@ -46,154 +50,198 @@
[%###########################################################################%] [%###########################################################################%]
[% BLOCK bug_display %] [% BLOCK bug_display %]
<div align="center"> <h1>
<b> [% terms.Bug %]
<font size="+3">[% terms.Bug %] [%+ bug.bug_id %] - [% bug.short_desc FILTER html %]</font> <a href="show_bug.cgi?id=[% bug.bug_id %]">[% bug.bug_id %]</a>
</b> [% IF Param("usebugaliases") AND bug.alias %]
</div> ([% bug.alias FILTER html %])
[% END %]
</h1>
<table class="bugfields">
[%# The rightcell block (also called by the row block) automatically shows
# the fields from rightcells %]
[% rightcells = ['reporter', 'assigned_to'] %]
[% IF Param('useqacontact') %]
[% rightcells.push('qa_contact') %]
[% END %]
[% rightcells.push('') %]
[% IF bug.cc %]
[% rightcells.push('cc') %]
[% END %]
[% IF bug.keywords %]
[% rightcells.push('keywords') %]
[% END %]
[%# Determine if the bug has a flag %]
[% FOREACH type = bug.flag_types %]
[% IF type.flags.size %]
[% rightcells.push('flags') %]
[% LAST %]
[% END %]
[% END %]
[% PROCESS row cell = "short_desc" fullrow = 1 %]
<table width="100%">
<tr> <tr>
<th>[% field_descs.product FILTER html %]:</th>
<td> <td>
<b>[% terms.Bug %]#:</b>
<a href="show_bug.cgi?id=[% bug.bug_id %]">[% bug.bug_id %]</a>
[% IF Param("usebugaliases") AND bug.alias %]
([% bug.alias FILTER html %])
[% END %]
</td>
<td>
<b> Product: </b>&nbsp;
[% IF Param("useclassification") %] [% IF Param("useclassification") %]
[[% bug.classification FILTER html %]]&nbsp; [[% bug.classification FILTER html %]]&nbsp;
[% END %] [% END %]
[% bug.product FILTER html %] [% bug.product FILTER html %]
</td> </td>
[% PROCESS cell attr = { description => "Version", [% PROCESS rightcell %]
name => "version" } %]
[% PROCESS cell attr = { description => "Platform",
name => "rep_platform" } %]
</tr> </tr>
[% PROCESS row cell = "component" %]
<tr> <tr>
[% PROCESS cell attr = { description => "OS/Version", <th>[% field_descs.bug_status FILTER html %]:</th>
name => "op_sys" } %]
<td> <td>
<b>Status:</b>&nbsp;
[% status_descs.${bug.bug_status} FILTER html %] [% status_descs.${bug.bug_status} FILTER html %]
[%+ resolution_descs.${bug.resolution} FILTER html %]
</td> </td>
[% PROCESS cell attr = { description => "Severity",
name => "bug_severity" } %]
[% PROCESS cell attr = { description => "Priority",
name => "priority" } %]
</tr>
<tr> [% PROCESS rightcell %]
<td>
<b>Resolution:</b>&nbsp;
[% resolution_descs.${bug.resolution} FILTER html %]
</td>
<td>
<b>Assigned To:</b>&nbsp;
[% bug.assigned_to.login FILTER html %]
</td>
<td>
<b>Reported By:</b>&nbsp;
[% bug.reporter.login FILTER html %]
</td>
[% IF Param('useqacontact') %]
<td>
<b>QA Contact:</b>&nbsp;
[% bug.qa_contact.login FILTER html %]
</td>
[% END %]
</tr> </tr>
<tr> <tr>
<td colspan="2"> <th>[% field_descs.bug_severity FILTER html %]:</th>
<b>Component:</b>&nbsp; <td class="bz_[% bug.bug_severity FILTER css_class_quote -%]">
[% bug.component FILTER html %] [% bug.bug_severity FILTER html %]
</td> </td>
<td colspan="2"> [% PROCESS rightcell %]
[% IF Param('usetargetmilestone') %]
<b>Target Milestone:</b>&nbsp;
[% bug.target_milestone FILTER html %]
[% END %]
</td>
</tr>
<tr>
<td colspan="4">
<b>URL:</b>&nbsp;
[% IF bug.bug_file_loc
AND NOT bug.bug_file_loc.match("^(javascript|data)") %]
<a href="[% bug.bug_file_loc FILTER html %]">
[% bug.bug_file_loc FILTER html %]</a>
[% ELSE %]
[% bug.bug_file_loc FILTER html %]
[% END %]
</tr> </tr>
<tr> <tr>
<td colspan="4"> <th>[% field_descs.priority FILTER html %]:</th>
<b>Summary:</b>&nbsp;[% bug.short_desc FILTER html %] <td class="bz_[% bug.priority FILTER css_class_quote -%]">
[% bug.priority FILTER html %]
</td> </td>
[% PROCESS rightcell %]
</tr> </tr>
[% IF use_keywords %] [% PROCESS row cell = "version" %]
[% PROCESS row cell = "target_milestone" IF Param('usetargetmilestone') %]
[% PROCESS row cell = "rep_platform" %]
[% PROCESS row cell = "op_sys" %]
[% IF bug.bug_file_loc %]
<tr> <tr>
<td colspan="4"> <th>[% field_descs.bug_file_loc FILTER html %]:</th>
<b>Keywords: </b>&nbsp;[% bug.keywords FILTER html %] <td colspan="3">
[% IF bug.bug_file_loc.match("^(javascript|data)") %]
[% bug.bug_file_loc FILTER html %]
[% ELSE %]
<a href="[% bug.bug_file_loc FILTER html %]">
[% bug.bug_file_loc FILTER html %]</a>
[% END %]
</td> </td>
</tr> </tr>
[% END %] [% END %]
[% IF Param("usestatuswhiteboard") %] [% IF Param("usestatuswhiteboard") %]
[% PROCESS row cell = "status_whiteboard" fullrow = 1 %]
[% END %]
[% IF (bug.dependson.size || bug.blocked.size) %]
[% PROCESS dependencies name = "dependson" %]
[% PROCESS dependencies name = "blocked" %]
[% END %]
[% IF UserInGroup(Param("timetrackinggroup")) %]
<tr> <tr>
<td colspan="4"> <th>Time tracking:</th>
<b>Status Whiteboard:</b>&nbsp; <td colspan="3">
[% bug.status_whiteboard FILTER html %] <table class="timetracking">
<tr>
<th>[% field_descs.estimated_time FILTER html %]</th>
<th>[% field_descs.actual_time FILTER html %]</th>
<th>[% field_descs.work_time FILTER html %]</th>
<th>[% field_descs.remaining_time FILTER html %]</th>
<th>[% field_descs.percentage_complete FILTER html %]</th>
<th>Gain</th>
</tr>
<tr>
<td>
[% PROCESS formattimeunit time_unit = bug.estimated_time %]
</td>
<td>
[% PROCESS formattimeunit
time_unit=(bug.remaining_time + bug.actual_time) %]
</td>
<td>[% PROCESS formattimeunit time_unit = bug.actual_time %]</td>
<td>
[% PROCESS formattimeunit time_unit = bug.remaining_time %]
</td>
<td>
[% PROCESS calculatepercentage act = bug.actual_time
rem = bug.remaining_time %]
</td>
<td>
[% PROCESS formattimeunit
time_unit=bug.estimated_time -
(bug.actual_time + bug.remaining_time) %]
</td>
</tr>
</table>
</td> </td>
</tr> </tr>
[% PROCESS row cell="deadline" %]
[% END %] [% END %]
[% IF UserInGroup(Param("timetrackinggroup")) %] [% IF bug.attachments.size %]
<tr> <tr>
<td colspan="4"> <th>Attachments:</th>
<b>Orig. Est.:</b>&nbsp; <td colspan="3">
[% PROCESS formattimeunit time_unit=bug.estimated_time %] [% IF bug.show_attachment_flags %]
&nbsp; <table>
<b>Current Est.:</b>&nbsp; <tr>
[% PROCESS formattimeunit <th>Description</th>
time_unit=(bug.remaining_time + bug.actual_time) %] <th>Flags</th>
&nbsp; </tr>
<b>Hours Worked:</b>&nbsp; [% FOREACH attachment = bug.attachments %]
[% PROCESS formattimeunit time_unit=bug.actual_time %]&nbsp; <tr>
<b>Hours Left:</b>&nbsp; <td>
[% PROCESS formattimeunit time_unit=bug.remaining_time %] <a href="attachment.cgi?id=[% attachment.id %]">
&nbsp; [% attachment.description FILTER html %]
<b>Percentage Complete:</b>&nbsp; </a>[% "<br>" IF not loop.last() %]
[% PROCESS calculatepercentage act=bug.actual_time </td>
rem=bug.remaining_time %]&nbsp; <td>
<b>Gain</b>&nbsp; [% IF attachment.flags.size == 0 %]
[% PROCESS formattimeunit <i>none</i>
time_unit=bug.estimated_time - (bug.actual_time + bug.remaining_time) %] [% ELSE %]
&nbsp; [% FOREACH flag = attachment.flags %]
<b>Deadline:</b>&nbsp; [% flag.setter.nick FILTER html %]:
[% bug.deadline %] [%+ flag.type.name FILTER html FILTER no_break %][% flag.status %]
[% IF flag.status == "?" && flag.requestee %]
([% flag.requestee.nick FILTER html %])
[% END %][% ", " IF not loop.last() %]
[% END %]
[% END %]
</td>
</tr>
[% END %]
</table>
[% ELSE %]
[% FOREACH attachment = bug.attachments %]
<a href="attachment.cgi?id=[% attachment.id %]">
[% attachment.description FILTER html %]
</a>[% "<br>" IF not loop.last() %]
[% END %]
[% END %]
</td> </td>
</tr> </tr>
[% END %] [% END %]
<tr>
<td colspan="4">
<b>Opened:</b>&nbsp;
[% bug.creation_ts FILTER time %]
</td>
</tr>
</table> </table>
<br>
[% PROCESS bug/comments.html.tmpl [% PROCESS bug/comments.html.tmpl
comments = bug.longdescs %] comments = bug.longdescs %]
...@@ -202,12 +250,72 @@ ...@@ -202,12 +250,72 @@
[%###########################################################################%] [%###########################################################################%]
[%# Block for standard table cells #%] [%# Block for standard table rows #%]
[%###########################################################################%] [%###########################################################################%]
[% BLOCK cell %] [% BLOCK row %]
<td> <tr>
<b>[% attr.description FILTER html %]:</b>&nbsp; <th>[% field_descs.${cell} FILTER html %]:</th>
[% bug.${attr.name} FILTER html %] <td[% " colspan=3" IF fullrow %]>[% bug.${cell} FILTER html %]</td>
</td> [% PROCESS rightcell IF !fullrow %]
</tr>
[% fullrow = 0 %]
[% END %]
[%############################################################################%]
[%# Block for dependencies #%]
[%############################################################################%]
[% BLOCK dependencies %]
<tr>
<th>[% terms.Bug %] [%+ field_descs.${name} FILTER html %]:</th>
<td>
[% FOREACH depbug = bug.${name} %]
[% depbug FILTER bug_link(depbug) %][% ", " IF not loop.last() %]
[% END %]
</td>
[% PROCESS rightcell %]
</tr>
[% END %]
[%############################################################################%]
[%# Block for cells shown right of the table #%]
[%############################################################################%]
[% BLOCK rightcell %]
[% IF rightcells %]
[% name = rightcells.shift %]
[% IF name == "cc" %]
<th class="rightcell">[% field_descs.cc FILTER html %]:</th>
<td>
[% FOREACH c = bug.cc %]
[% c FILTER html %][% ", " IF not loop.last() %]
[% END %]
[% ELSIF name == "reporter" || name == "assigned_to"
|| name == "qa_contact" %]
<th class="rightcell">[% field_descs.${name} FILTER html %]:</th>
<td>[% bug.${name}.identity FILTER html %]</td>
[% ELSIF name == "flags" %]
<th class="rightcell">Flags:</th>
<td>
[% FOREACH type = bug.flag_types %]
[% FOREACH flag = type.flags %]
[% flag.setter.nick FILTER html %]:
[%+ flag.type.name FILTER html FILTER no_break %][% flag.status %]
[%+ IF flag.status == "?" && flag.requestee %]
([% flag.requestee.nick FILTER html %])
[% END %]<br>
[% END %]
[% END %]
</td>
[% ELSIF name != "" %]
<th class="rightcell">[% field_descs.${name} FILTER html %]:</th>
<td>[% bug.${name} FILTER html %]</td>
[% ELSE %]
<td>&nbsp;</td>
<td>&nbsp;</td>
[% END %]
[% END %]
[% END %] [% END %]
...@@ -354,7 +354,9 @@ ...@@ -354,7 +354,9 @@
'bug/show-multiple.html.tmpl' => [ 'bug/show-multiple.html.tmpl' => [
'bug.bug_id', 'bug.bug_id',
'bug.deadline', 'depbug FILTER bug_link(depbug)',
'attachment.id',
'flag.status',
], ],
'bug/show.html.tmpl' => [ 'bug/show.html.tmpl' => [
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment