1
[%# 1.0@bugzilla.org %]
2
[%# The contents of this file are subject to the Mozilla Public
3
# License Version 1.1 (the "License"); you may not use this file
4
# except in compliance with the License. You may obtain a copy of
5
# the License at http://www.mozilla.org/MPL/
7
# Software distributed under the License is distributed on an "AS
8
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
9
# implied. See the License for the specific language governing
10
# rights and limitations under the License.
12
# The Original Code is the Bugzilla Bug Tracking System.
14
# The Initial Developer of the Original Code is Netscape Communications
15
# Corporation. Portions created by Netscape are
16
# Copyright (C) 1998 Netscape Communications Corporation. All
19
# Contributor(s): Myk Melez <myk@mozilla.org>
20
# Max Kanat-Alexander <mkanat@bugzilla.org>
23
[% PROCESS global/variables.none.tmpl %]
25
[% dontchange = "--do_not_change--" %]
26
<input type="hidden" name="dontchange" value="[% dontchange FILTER html %]">
28
<script type="text/javascript">
29
var numelements = document.forms.changeform.elements.length;
30
function SetCheckboxes(value) {
32
for (var i=0 ; i<numelements ; i++) {
33
item = document.forms.changeform.elements[i];
37
document.write(' <input type="button" name="uncheck_all" value="Uncheck All" onclick="SetCheckboxes(false);">');
38
document.write(' <input type="button" name="check_all" value="Check All" onclick="SetCheckboxes(true);">');
43
<p style="font-size:smaller">
44
To change multiple [% terms.bugs %]:</p>
45
<ol style="font-size:smaller">
46
<li>Check the [% terms.bugs %] you want to change above.</li>
47
<li>Make your changes in the form fields below. If the change
48
you are making requires an explanation, include it in
49
the comments box.</li>
50
<li>Click the <em>Commit</em> button.</li>
56
<th><label for="product">Product:</label></th>
58
[% PROCESS selectmenu menuname = "product"
63
<th><label for="version">Version:</label></th>
65
[% PROCESS selectmenu menuname = "version"
73
<th><label for="component">Component:</label></th>
75
[% PROCESS selectmenu menuname = "component"
76
menuitems = components %]
80
<label for="priority">
81
<a href="page.cgi?id=fields.html#priority">Priority</a>:
85
[% PROCESS selectmenu menuname = "priority"
86
menuitems = priorities %]
93
<label for="rep_platform">
94
<a href="page.cgi?id=fields.html#rep_platform">Platform</a>:
98
[% PROCESS selectmenu menuname = "rep_platform"
99
menuitems = platforms %]
103
<label for="bug_severity">
104
<a href="page.cgi?id=fields.html#bug_severity">Severity</a>:
108
[% PROCESS selectmenu menuname = "bug_severity"
109
menuitems = severities %]
117
<a href="page.cgi?id=fields.html#op_sys">OS</a>:
120
<td [% " colspan=\"3\"" IF !Param("usetargetmilestone") %]>
121
[% PROCESS selectmenu menuname = "op_sys"
122
menuitems = op_sys %]
125
[% IF Param("usetargetmilestone") %]
126
<th><label for="target_milestone">Target Milestone:</label></th>
128
[% PROCESS selectmenu menuname = "target_milestone"
129
menuitems = targetmilestones %]
134
[% IF user.in_group(Param("timetrackinggroup")) %]
136
<th><label for="estimated_time">Estimated Hours:</label></th>
138
<input id="estimated_time"
139
name="estimated_time"
140
value="[% dontchange FILTER html %]"
143
<th><label for="remaining_time">Remaining Hours:</label></th>
145
<input id="remaining_time"
146
name="remaining_time"
147
value="[% dontchange FILTER html %]"
153
[% IF Param("useqacontact") %]
155
<th><label for="qa_contact">QA Contact:</label></th>
157
<input id="qa_contact"
159
value="[% dontchange FILTER html %]"
167
<th><label for="masscc">CC List:</label></th>
169
<input id="masscc" name="masscc" size="32">
170
<select name="ccaction">
171
<option value="add">Add these to the CC List</option>
172
<option value="remove">Remove these from the CC List</option>
178
[% IF use_keywords %]
182
<label for="keywords">
183
<a href="describekeywords.cgi">Keywords</a>:
187
<input id="keywords" name="keywords" size="32">
188
<select name="keywordaction">
189
<option value="add">Add these keywords</option>
190
<option value="delete">Delete these keywords</option>
191
<option value="makeexact">Make the keywords be exactly this list</option>
198
[% IF Param('usestatuswhiteboard') %]
201
<b>Status Whiteboard:</b>
204
<input name="status_whiteboard"
205
value="[% dontchange FILTER html %]" size="60">
211
[% FOREACH field = Bugzilla.get_fields({ obsolete => 0, custom => 1 }) %]
213
[% PROCESS bug/field.html.tmpl value = dontchange
215
allow_dont_change = 1 %]
221
<b><label for="comment">Additional Comments:</label></b><br>
222
[% INCLUDE global/textarea.html.tmpl
227
cols = constants.COMMENT_COLS
230
[% IF groups.size > 0 %]
235
<th>Don't<br>change<br>this group<br>restriction</th>
236
<th>Remove<br>[% terms.bugs %]<br>from this<br>group</th>
237
<th>Add<br>[% terms.bugs %]<br>to this<br>group</th>
241
[% FOREACH group = groups %]
244
<input type="radio" name="bit-[% group.id %]" value="-1" checked="checked">
247
<input type="radio" name="bit-[% group.id %]" value="0">
249
[% IF group.isactive %]
251
<input type="radio" name="bit-[% group.id %]" value="1">
255
[% foundinactive = 1 %]
259
[% SET inactive = !group.isactive %]
260
[% group.description FILTER html_light FILTER inactive(inactive) %]
268
[% IF foundinactive %]
269
<p style="font-size:smaller">(Note: [% terms.Bugs %] may not be added to [% FILTER inactive %]inactive
270
groups[% END %], only removed.)</p>
278
<input id="knob-none" type="radio" name="knob" value="none" checked="checked">
279
<label for="knob-none">Do nothing else</label><br>
281
[% IF bugstatuses.size == 1 && bugstatuses.0 == unconfirmedstate %]
282
[% knum = knum + 1 %]
283
<input id="knob-confirm" type="radio" name="knob" value="confirm">
284
<label for="knob-confirm">
285
Confirm [% terms.bugs %] (change status to <b>[% status_descs.NEW FILTER html %]</b>)
289
[%# If all the bugs being changed are open, allow the user to accept them,
290
clear their resolution or resolve them. %]
291
[% IF !bugstatuses.containsany(closedstates) %]
292
[% knum = knum + 1 %]
293
<input id="knob-accept" type="radio" name="knob" value="accept">
294
<label for="knob-accept">
295
Accept [% terms.bugs %] (change status to <b>[% status_descs.ASSIGNED FILTER html %]</b>)
298
[% knum = knum + 1 %]
299
<input id="knob-clearresolution" type="radio" name="knob" value="clearresolution">
300
<label for="knob-clearresolution">Clear the resolution</label><br>
302
[% knum = knum + 1 %]
303
<input id="knob-resolve" type="radio" name="knob" value="resolve">
304
<label for="knob-resolve">
305
Resolve [% terms.bugs %], changing <a href="page.cgi?id=fields.html#resolution">resolution</a> to
307
<select name="resolution" onchange="document.forms.changeform.knob[[% knum %]].checked=true">
308
[% FOREACH resolution = resolutions %]
309
[% NEXT IF !resolution %]
310
<option value="[% resolution FILTER html %]">
311
[% get_resolution(resolution) FILTER html %]
318
[%# If all the bugs are closed, allow the user to reopen them. %]
319
[% IF !bugstatuses.containsany(openstates) %]
320
[% knum = knum + 1 %]
321
<input id="knob-reopen" type="radio" name="knob" value="reopen">
322
<label for="knob-reopen">Reopen [% terms.bugs %]</label><br>
325
[% IF bugstatuses.size == 1 %]
326
[% IF bugstatuses.contains('RESOLVED') %]
327
[% knum = knum + 1 %]
328
<input id="knob-verify" type="radio" name="knob" value="verify">
329
<label for="knob-verify">Mark [% terms.bugs %] as <b>[% status_descs.VERIFIED FILTER html %]</b></label><br>
333
[% IF !bugstatuses.containsany(openstates) AND !bugstatuses.contains('CLOSED') %]
334
[% knum = knum + 1 %]
335
<input id="knob-close" type="radio" name="knob" value="close">
336
<label for="knob-close">Mark [% terms.bugs %] as <b>[% status_descs.CLOSED FILTER html %]</b></label><br>
339
[% knum = knum + 1 %]
340
<input id="knob-reassign" type="radio" name="knob" value="reassign">
341
<label for="knob-reassign"><a href="page.cgi?id=fields.html#assigned_to">
342
Reassign</a> [% terms.bugs %] to
344
[% INCLUDE global/userselect.html.tmpl
345
name => "assigned_to"
348
onchange => "document.forms.changeform.knob[$knum].checked=true;"
351
[% knum = knum + 1 %]
352
<input id="knob-reassignbycomponent"
355
value="reassignbycomponent">
356
<label for="knob-reassignbycomponent">
357
Reassign [% terms.bugs %] to default assignee of selected component
360
<input type="submit" id="commit" value="Commit">
362
[% IF Param('move-enabled') && user.is_mover %]
363
<input type="submit" name="action" id="action" value="[% Param('move-button-text') %]">
366
[%############################################################################%]
367
[%# Select Menu Block #%]
368
[%############################################################################%]
370
[% BLOCK selectmenu %]
371
<select id="[% menuname %]" name="[% menuname %]">
372
<option value="[% dontchange FILTER html %]" selected="selected">
373
[% dontchange FILTER html %]
375
[% FOREACH menuitem = menuitems %]
376
[% IF property %][% menuitem = menuitem.$property %][% END %]
377
<option value="[% menuitem FILTER html %]">[% menuitem FILTER html %]</option>