blob: ae9dbcb80dc887a07713be8a5d2af480272006a5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
[%# 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>
# David D. Kilzer <ddkilzer@kilzer.net>
#%]
[%# INTERFACE:
# operations: array of hashes. May be empty. Each has has three members:
# who: string. who performed the operation
# when: string. when they performed it
# changes: hash. Details of what they changed. This hash has three
# compulsory and one optional member:
# field: string. The name of the field
# removed: string. What was removed from the field
# added: string. What was added to the field
# attach_id: integer. If the change was adding an attachment, its id.
# incomplete_data: boolean. True if some of the data is incomplete (because
# it was affected by an old Bugzilla bug.)
#%]
[% PROCESS "global/field-descs.none.tmpl" %]
[% PROCESS bug/time.html.tmpl %]
[% IF incomplete_data %]
<p>
There used to be an issue in <a href="http://www.bugzilla.org/">Bugzilla</a>
which caused activity data to be lost if there were a large number of cc's
or dependencies. That has been fixed, but some data was already lost in
your activity table that could not be regenerated. The changes that the
script could not reliably determine are prefixed by '?'.
</p>
[% END %]
[% IF operations.size > 0 %]
<table border cellpadding="4">
<tr>
<th>Who</th>
<th>When</th>
<th>What</th>
<th>Removed</th>
<th>Added</th>
</tr>
[% FOREACH operation = operations %]
<tr>
<td rowspan="[% operation.changes.size %]" valign="top">
[% operation.who FILTER email FILTER html %]
</td>
<td rowspan="[% operation.changes.size %]" valign="top">
[% operation.when FILTER time %]
</td>
[% FOREACH change = operation.changes %]
[% "</tr><tr>" IF loop.index > 0 %]
<td>
[% IF change.attachid %]
<a href="attachment.cgi?id=[% change.attachid %]">
Attachment #[% change.attachid %]</a>
[% END %]
[%+ field_descs.${change.fieldname} FILTER html %]
</td>
<td>
[% IF change.removed.defined %]
[% IF change.fieldname == 'estimated_time' ||
change.fieldname == 'remaining_time' ||
change.fieldname == 'work_time' %]
[% PROCESS formattimeunit time_unit=change.removed %]
[% ELSIF change.fieldname == 'blocked' ||
change.fieldname == 'dependson' %]
[% change.removed FILTER bug_list_link FILTER none %]
[% ELSE %]
[% display_value(change.fieldname, change.removed) FILTER email FILTER html %]
[% END %]
[% ELSE %]
[% END %]
</td>
<td>
[% IF change.added.defined %]
[% IF change.fieldname == 'estimated_time' ||
change.fieldname == 'remaining_time' ||
change.fieldname == 'work_time' %]
[% PROCESS formattimeunit time_unit=change.added %]
[% ELSIF change.fieldname == 'blocked' ||
change.fieldname == 'dependson' %]
[% change.added FILTER bug_list_link FILTER none %]
[% ELSE %]
[% display_value(change.fieldname, change.added) FILTER email FILTER html %]
[% END %]
[% ELSE %]
[% END %]
</td>
[% END %]
</tr>
[% END %]
</table>
[% END %]
|