bugzilla-4intranet/template/en/default/reports/report.html.tmpl

201 lines
7.3 KiB
Cheetah

[%# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code is the Bugzilla Bug Tracking System.
#
# The Initial Developer of the Original Code is Netscape Communications
# Corporation. Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s): Gervase Markham <gerv@gerv.net>
#%]
[%# INTERFACE:
# col_field: string. Name of the field being plotted as columns.
# row_field: string. Name of the field being plotted as rows.
# tbl_field: string. Name of the field being plotted as tables.
# tbl_names: array. List of values for the field being plotted as tables.
# time: integer. Seconds since the epoch.
# data: <depends on format>. Data to plot.
# format: string. Format of the individual reports.
# width: integer. For image charts, height of the image.
# height: integer. For image charts, width of the image.
# imagebase: string. Base URL for chart image.
# switchbase: string. Base URL for format switching.
# cumulate: boolean. For bar/line charts, whether to cumulate data sets.
#%]
[%# We ignore row_field for pie charts %]
[% IF format == "pie" %]
[% row_field = "" %]
[% END %]
[% tbl_field_disp = field_descs.$tbl_field || tbl_field %]
[% col_field_disp = field_descs.$col_field || col_field %]
[% row_field_disp = field_descs.$row_field || row_field %]
[% switchbase = switchbase FILTER html %]
[% title = BLOCK %]
Report:
[% IF tbl_field %]
[% tbl_field_disp FILTER html %]
[% END %]
[% " / " IF tbl_field AND (col_field OR row_field) %]
[% IF row_field %]
[% row_field_disp FILTER html %]
[% END %]
[% " / " IF col_field AND row_field %]
[% col_field_disp FILTER html %]
[% END %]
[% time = time FILTER time('%Y-%m-%d %H:%M:%S') FILTER html %]
[% PROCESS global/header.html.tmpl
style = "
.t1 { background-color: #ffffff } /* white */
.t2 { background-color: #dfefff } /* light blue */
.t3 { background-color: #dddddd } /* grey */
.t4 { background-color: #c3d3ed } /* darker blue */
.ttotal { background-color: #cfffdf } /* light green */
"
header_addl_info = time
%]
[% IF debug %]
<p>[% query FILTER html %]</p>
[% END %]
<div align="center">
[% FOREACH tbl = tbl_names %]
[% IF tbl == "-total-" %]
[% tbl_disp = "Total" %]
[% ELSE %]
[% tbl_disp = tbl %]
[% END %]
[% IF format == "table" %]
[% PROCESS "reports/report-table.html.tmpl" %]
[% ELSE %]
[% IF tbl %]
<h2>[% tbl_disp FILTER email FILTER html %]</h2>
[% END %]
[% imageurl = BLOCK %]report.cgi?[% imagebase FILTER html %]&amp;format=
[% format FILTER url_quote %]&amp;ctype=png&amp;action=plot&amp;
[% IF tbl_field %]
[% IF tbl != "-total-" %]
[% tbl_field FILTER url_quote %]=[% tbl FILTER url_quote %]&amp;
[% ELSE %]
[% FOREACH tblname = tbl_names %]
[% IF tblname != "-total-" %]
[% tbl_field FILTER url_quote %]=[% tblname FILTER url_quote %]&amp;
[% END %]
[% END %]
[% END %]
[% END %]width=[% width %]&amp;height=[% height %]
[% END %]
<img alt="Graphical report results" src="[% imageurl %]"
width="[% width %]" height="[% height %]">
[% END %]
<br />
[% END %]
<table>
<tr>
<td>
[% formats = [ { name => "pie", description => "Pie" },
{ name => "bar", description => "Bar" },
{ name => "line", description => "Line" },
{ name => "table", description => "Table" } ] %]
[% formaturl = "report.cgi?$switchbase&amp;width=$width" _
"&amp;height=$height&amp;action=wrap" %]
[% FOREACH other_format = formats %]
[% NEXT IF other_format.name == "pie" AND row_field AND col_field %]
[% UNLESS other_format.name == format %]
<a href="[% formaturl %]&amp;format=[% other_format.name %]&amp;measure=[% measure %]">
[% END %]
[% other_format.description FILTER html %]
[% "</a>" UNLESS other_format.name == format %] |
[% END %]
<a href="[% formaturl %]&amp;measure=[% measure %]&amp;ctype=csv&amp;format=table">CSV</a>
</td>
[% IF format != "table" %]
<td>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</td>
[% sizeurl = BLOCK %]report.cgi?
[% switchbase %]&amp;action=wrap&amp;format=[% format FILTER html %]&amp;measure=[% measure FILTER html %][% END %]
<td align="center">
<a href="[% sizeurl %]&amp;width=[% width %]&amp;height=
[% height + 100 %]">Taller</a><br />
<a href="[% sizeurl %]&amp;width=[% width - 100 %]&amp;height=
[% height %]">Thinner</a> *
<a href="[% sizeurl %]&amp;width=[% width + 100 %]&amp;height=
[% height %]">Fatter</a>&nbsp;&nbsp;&nbsp;&nbsp;<br />
<a href="[% sizeurl %]&amp;width=[% width %]&amp;height=
[% height - 100 %]">Shorter</a><br />
</td>
[% END %]
</tr>
</table>
<table><tr><td>
[% measure_descs = {
rtime => 'Remaining time'
etime => 'Estimated time'
wtime => 'Actual time'
times => 'Estimated/Actual/Remaining'
count => "Number of $terms.bugs"
} %]
[% FOR m = measure_descs.keys.sort %]
[% IF m != 'times' || format == 'table' %]
[%+ IF measure != m %]<a href="[% formaturl %]&amp;format=[% format %]&amp;measure=[% m %]">[% END %]
[% measure_descs.$m %]
[% IF measure != m %]</a>[% END %]
[% IF NOT loop.last %] | [% END %]
[% END %]
[% END %]
</td></tr></table>
<p>
[% IF format == "table" %]
<a href="query.cgi?[% switchbase %]&amp;format=report-table">Edit
this report</a>
[% ELSE %]
<a href="query.cgi?[% switchbase %]&amp;chart_format=
[% format %]&amp;format=report-graph&amp;cumulate=[% cumulate %]">
Edit this report
</a>
[% END %]
[% IF saved_report_id %]
| <a href="report.cgi?action=del&amp;saved_report_id=[% saved_report_id FILTER uri %]&amp;token=
[%~ issue_hash_token(['delete_report', saved_report_id]) FILTER uri %]">Forget this report</a>
[% ELSE %]
<form method="get" action="report.cgi">
<input type="submit" id="remember" value="Remember report" /> as
<input type="hidden" name="query" value="[% switchbase %]&amp;format=[% format FILTER html %]&amp;action=wrap" />
<input type="hidden" name="action" value="add" />
<input type="hidden" name="token" value="[% issue_hash_token(['save_report']) FILTER html %]" />
<input type="text" id="name" name="name" size="20" value="" maxlength="64" />
</form>
[% END %]
</p>
</div>
[% PROCESS global/footer.html.tmpl %]