~ubuntu-branches/ubuntu/intrepid/bugzilla/intrepid

« back to all changes in this revision

Viewing changes to template/en/default/bug/create/create.html.tmpl

  • Committer: Bazaar Package Importer
  • Author(s): Raphael Bossek
  • Date: 2008-06-27 22:34:34 UTC
  • mfrom: (1.1.7 upstream)
  • Revision ID: james.westby@ubuntu.com-20080627223434-0ib57vstn43bb4a3
Tags: 3.0.4.1-1
* Update of French, Russian and German translations. (closes: #488251)
* Added Bulgarian and Belarusian translations.

Show diffs side-by-side

added added

removed removed

Lines of Context:
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/
6
 
  #
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.
11
 
  #
12
 
  # The Original Code is the Bugzilla Bug Tracking System.
13
 
  #
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
17
 
  # Rights Reserved.
18
 
  #
19
 
  # Contributor(s): Gervase Markham <gerv@gerv.net>
20
 
  #                 Ville Skyttä <ville.skytta@iki.fi>
21
 
  #                 Shane H. W. Travis <travis@sedsystems.ca>
22
 
  #                 Marc Schumann <wurblzap@gmail.com>
23
 
  #                 Akamai Technologies <bugzilla-dev@akamai.com>
24
 
  #                 Max Kanat-Alexander <mkanat@bugzilla.org>
25
 
  #%]
26
 
 
27
 
[% PROCESS "global/field-descs.none.tmpl" %]
28
 
 
29
 
[% title = BLOCK %]Enter [% terms.Bug %]: [% product.name FILTER html %][% END %]
30
 
 
31
 
[% PROCESS global/header.html.tmpl
32
 
  title = title
33
 
  style_urls = [ 'skins/standard/create_attachment.css' ]
34
 
  javascript_urls = [ "js/attachment.js" ]
35
 
%]
36
 
 
37
 
<script type="text/javascript">
38
 
<!--
39
 
 
40
 
var initialowners = new Array([% product.components.size %]);
41
 
var last_initialowner;
42
 
var initialccs = new Array([% product.components.size %]);
43
 
var components = new Array([% product.components.size %]);
44
 
var flags = new Array([% product.components.size %]);
45
 
[% IF Param("useqacontact") %]
46
 
    var initialqacontacts = new Array([% product.components.size %]);
47
 
    var last_initialqacontact;
48
 
[% END %]
49
 
[% count = 0 %]
50
 
[%- FOREACH c = product.components %]
51
 
    components[[% count %]] = "[% c.name FILTER js %]";
52
 
    initialowners[[% count %]] = "[% c.default_assignee.login FILTER js %]";
53
 
    [% flag_list = [] %]
54
 
    [% FOREACH f = c.flag_types.bug %]
55
 
      [% NEXT UNLESS f.is_active %]
56
 
      [% flag_list.push(f.id) %]
57
 
    [% END %]
58
 
    [% FOREACH f = c.flag_types.attachment %]
59
 
      [% NEXT UNLESS f.is_active %]
60
 
      [% flag_list.push(f.id) %]
61
 
    [% END %]
62
 
    flags[[% count %]] = [[% flag_list.join(",") FILTER js %]];
63
 
    [% IF Param("useqacontact") %]
64
 
        initialqacontacts[[% count %]] = "[% c.default_qa_contact.login FILTER js %]";
65
 
    [% END %]
66
 
 
67
 
    [% SET initial_cc_list = [] %]
68
 
    [% FOREACH cc_user = c.initial_cc %]
69
 
      [% initial_cc_list.push(cc_user.login) %]
70
 
    [% END %]
71
 
    initialccs[[% count %]] = "[% initial_cc_list.join(', ') FILTER js %]";
72
 
 
73
 
    [% count = count + 1 %]
74
 
[%- END %]
75
 
 
76
 
function set_assign_to() {
77
 
    // Based on the selected component, fill the "Assign To:" field
78
 
    // with the default component owner, and the "QA Contact:" field
79
 
    // with the default QA Contact. It also selectively enables flags.
80
 
    var form = document.Create;
81
 
    var assigned_to = form.assigned_to.value;
82
 
 
83
 
[% IF Param("useqacontact") %]
84
 
    var qa_contact = form.qa_contact.value;
85
 
[% END %]
86
 
 
87
 
    var index = -1;
88
 
    if (form.component.type == 'select-one') {
89
 
        index = form.component.selectedIndex;
90
 
    } else if (form.component.type == 'hidden') {
91
 
        // Assume there is only one component in the list
92
 
        index = 0;
93
 
    }
94
 
    if (index != -1) {
95
 
        var owner = initialowners[index];
96
 
        var component = components[index];
97
 
        if (assigned_to == last_initialowner
98
 
            || assigned_to == owner
99
 
            || assigned_to == '') {
100
 
            form.assigned_to.value = owner;
101
 
            last_initialowner = owner;
102
 
        }
103
 
 
104
 
        document.getElementById('initial_cc').innerHTML = initialccs[index];
105
 
 
106
 
        [% IF Param("useqacontact") %]
107
 
            var contact = initialqacontacts[index];
108
 
            if (qa_contact == last_initialqacontact
109
 
                || qa_contact == contact
110
 
                || qa_contact == '') {
111
 
                  form.qa_contact.value = contact;
112
 
                  last_initialqacontact = contact;
113
 
            }
114
 
        [% END %]
115
 
 
116
 
        // First, we disable all flags. Then we re-enable those
117
 
        // which are available for the selected component.
118
 
        var inputElements = document.getElementsByTagName("select");
119
 
        var inputElement, flagField;
120
 
        for ( var i=0 ; i<inputElements.length ; i++ ) {
121
 
            inputElement = inputElements.item(i);
122
 
            if (inputElement.name.search(/^flag_type-(\d+)$/) != -1) {
123
 
                var id = inputElement.name.replace(/^flag_type-(\d+)$/, "$1");
124
 
                inputElement.disabled = true;
125
 
                // Also disable the requestee field, if it exists.
126
 
                inputElement = document.getElementById("requestee_type-" + id);
127
 
                if (inputElement) inputElement.disabled = true;
128
 
            }
129
 
        }
130
 
        // Now enable flags available for the selected component.
131
 
        for (var i = 0; i < flags[index].length; i++) {
132
 
            flagField = document.getElementById("flag_type-" + flags[index][i]);
133
 
            // Do not enable flags the user cannot set nor request.
134
 
            if (flagField && flagField.options.length > 1) {
135
 
                flagField.disabled = false;
136
 
                // Re-enabling the requestee field depends on the status
137
 
                // of the flag.
138
 
                toggleRequesteeField(flagField, 1);
139
 
            }
140
 
        }
141
 
    }
142
 
}
143
 
 
144
 
function handleWantsAttachment(wants_attachment) {
145
 
    if (wants_attachment) {
146
 
        document.getElementById('attachment_false').style.display = 'none';
147
 
        document.getElementById('attachment_true').style.display = 'block';
148
 
    }
149
 
    else {
150
 
        document.getElementById('attachment_false').style.display = 'block';
151
 
        document.getElementById('attachment_true').style.display = 'none';
152
 
        clearAttachmentFields();
153
 
    }
154
 
}
155
 
 
156
 
-->
157
 
</script>
158
 
 
159
 
<form name="Create" id="Create" method="post" action="post_bug.cgi"
160
 
      enctype="multipart/form-data">
161
 
<input type="hidden" name="product" value="[% product.name FILTER html %]">
162
 
<input type="hidden" name="token" value="[% token FILTER html %]">
163
 
 
164
 
<table cellspacing="2" cellpadding="0" border="0">
165
 
 
166
 
  <tr>
167
 
    <td>&nbsp;</td>
168
 
    <td colspan="3">
169
 
    [%# Migration note: The following file corresponds to the old Param
170
 
      # 'entryheaderhtml'
171
 
      #%]
172
 
    [% INCLUDE 'bug/create/user-message.html.tmpl' %]
173
 
    </td>
174
 
  </tr>
175
 
 
176
 
  <tr>
177
 
    <td>&nbsp;</td>
178
 
    <td colspan="3">&nbsp;</td>
179
 
  </tr>
180
 
 
181
 
  <tr>
182
 
    <td align="right" valign="top"><strong>Reporter:</strong></td>
183
 
    <td valign="top">[% user.login FILTER html %]</td>
184
 
 
185
 
    <td align="right" valign="top"><strong>Product:</strong></td>
186
 
    <td valign="top">[% product.name FILTER html %]</td>
187
 
  </tr>
188
 
 
189
 
  [%# We can't use the select block in these two cases for various reasons. %]
190
 
  <tr>
191
 
    <td align="right" valign="top">
192
 
      <strong>Version:</strong>
193
 
    </td>
194
 
    <td>
195
 
      <select name="version" size="5">
196
 
        [%- FOREACH v = version %]
197
 
          <option value="[% v FILTER html %]"
198
 
            [% " selected=\"selected\"" IF v == default.version %]>[% v FILTER html -%]
199
 
          </option>
200
 
        [%- END %]
201
 
      </select>
202
 
    </td>
203
 
 
204
 
    <td align="right" valign="top">
205
 
      <strong>
206
 
        <a href="describecomponents.cgi?product=[% product.name FILTER url_quote %]">
207
 
          Component</a>:
208
 
      </strong>
209
 
    </td>
210
 
    <td>
211
 
      <select name="component" onchange="set_assign_to();" size="5">
212
 
        [%- FOREACH c = product.components %]
213
 
          <option value="[% c.name FILTER html %]"
214
 
            [% " selected=\"selected\"" IF c.name == default.component_ %]>
215
 
            [% c.name FILTER html -%]
216
 
          </option>
217
 
        [%- END %]
218
 
      </select>
219
 
    </td>
220
 
  </tr>
221
 
 
222
 
  <tr>
223
 
    <td>&nbsp;</td>
224
 
    <td colspan="3">&nbsp;</td>
225
 
  </tr>
226
 
 
227
 
  <tr>
228
 
    [% sel = { description => 'Severity', name => 'bug_severity' } %]
229
 
    [% INCLUDE select %]
230
 
 
231
 
    [% sel = { description => 'Platform', name => 'rep_platform' } %]
232
 
    [% INCLUDE select %]
233
 
  </tr>
234
 
 
235
 
  <tr>
236
 
    [% IF Param('letsubmitterchoosepriority') %]
237
 
      [% sel = { description => 'Priority', name => 'priority' } %]
238
 
      [% INCLUDE select %]
239
 
    [% ELSE %]
240
 
      <td colspan="2">
241
 
        <input type="hidden" name="priority" value="[% default.priority FILTER html %]">
242
 
      </td>
243
 
    [% END %]
244
 
 
245
 
    [% sel = { description => 'OS', name => 'op_sys' } %]
246
 
    [% INCLUDE select %]
247
 
  </tr>
248
 
 
249
 
  [% IF Param('usetargetmilestone') && Param('letsubmitterchoosemilestone') %]
250
 
    <tr>
251
 
      [% sel = { description => 'Target Milestone', name => 'target_milestone' } %]
252
 
      [% INCLUDE select %]
253
 
      <td colspan="2">&nbsp;</td>
254
 
    </tr>
255
 
  [% END %]
256
 
 
257
 
  <tr>
258
 
    <td>&nbsp;</td>
259
 
    <td colspan="3">&nbsp;</td>
260
 
  </tr>
261
 
 
262
 
  <tr>
263
 
[% IF bug_status.size <= 1 %]
264
 
  <input type="hidden" name="bug_status" 
265
 
         value="[% default.bug_status FILTER html %]">
266
 
    <td align="right" valign="top"><strong>Initial State:</strong></td>
267
 
    <td valign="top">[% status_descs.${default.bug_status} FILTER html %]</td>
268
 
[% ELSE %]
269
 
    [% sel = { description => 'Initial State', name => 'bug_status' } %]
270
 
    [% INCLUDE select %]
271
 
[% END %]
272
 
    <td>&nbsp;</td>
273
 
    [%# Calculate the number of rows we can use for flags %]
274
 
    [% num_rows = 6 + (Param("useqacontact") ? 1 : 0) +
275
 
                      (user.in_group(Param('timetrackinggroup')) ? 3 : 0) +
276
 
                      (Param("usebugaliases") ? 1 : 0)
277
 
    %]
278
 
    <td rowspan="[% num_rows FILTER html %]" valign="top">
279
 
      [% IF product.flag_types.bug.size > 0 %]
280
 
        [% display_flag_headers = 0 %]
281
 
        [% any_flags_requesteeble = 0 %]
282
 
 
283
 
        [% FOREACH flag_type = product.flag_types.bug %]
284
 
          [% NEXT UNLESS flag_type.is_active %]
285
 
          [% display_flag_headers = 1 %]
286
 
          [% SET any_flags_requesteeble = 1 IF flag_type.is_requestable && flag_type.is_requesteeble %]
287
 
        [% END %]
288
 
 
289
 
        [% IF display_flag_headers %]
290
 
          [% PROCESS "flag/list.html.tmpl" flag_types = product.flag_types.bug
291
 
                                           any_flags_requesteeble = any_flags_requesteeble
292
 
                                           flag_table_id = "bug_flags"
293
 
          %]
294
 
        [% END %]
295
 
      [% END %]
296
 
    </td>
297
 
  </tr>
298
 
 
299
 
  <tr>
300
 
    <td align="right">
301
 
      <strong>
302
 
        <a href="page.cgi?id=fields.html#assigned_to">Assign To</a>:
303
 
      </strong>
304
 
    </td>
305
 
    <td colspan="2">
306
 
      [% INCLUDE global/userselect.html.tmpl
307
 
         name => "assigned_to"
308
 
         value => assigned_to
309
 
         disabled => assigned_to_disabled
310
 
         size => 32
311
 
         emptyok => 1
312
 
       %]
313
 
      <noscript>(Leave blank to assign to component's default assignee)</noscript>
314
 
    </td>
315
 
  </tr>
316
 
  
317
 
[% IF Param("useqacontact") %]
318
 
    <tr>
319
 
      <td align="right"><strong>QA Contact:</strong></td>
320
 
      <td colspan="2">
321
 
      [% INCLUDE global/userselect.html.tmpl
322
 
         name => "qa_contact"
323
 
         value => qa_contact
324
 
         disabled => qa_contact_disabled
325
 
         size => 32
326
 
         emptyok => 1
327
 
       %]
328
 
        <noscript>(Leave blank to assign to default qa contact)</noscript>
329
 
      </td>
330
 
    </tr>
331
 
[% END %]
332
 
 
333
 
  <tr>
334
 
    <td align="right"><strong>Cc:</strong></td>
335
 
    <td colspan="2">
336
 
      [% INCLUDE global/userselect.html.tmpl
337
 
         name => "cc"
338
 
         value => cc
339
 
         disabled => cc_disabled
340
 
         size => 45
341
 
         multiple => 5
342
 
       %]
343
 
    </td>
344
 
  </tr>
345
 
 
346
 
  <tr>
347
 
    <th align="right">Default CC:</th>
348
 
    <td colspan="2">
349
 
      <div id="initial_cc">
350
 
          <!-- This has to happen after everything above renders,
351
 
               and onload doesn't work. So this is as good a place
352
 
               as any to put it. -->
353
 
          <script type="text/javascript">set_assign_to();</script>
354
 
      </div>
355
 
   </td>
356
 
  </tr>
357
 
  
358
 
  <tr>
359
 
    <td>&nbsp;</td>
360
 
    <td colspan="2"></td>
361
 
  </tr>
362
 
 
363
 
[% IF user.in_group(Param('timetrackinggroup')) %]
364
 
  <tr>
365
 
    <td align="right"><strong>Estimated Hours:</strong></td>
366
 
    <td colspan="2">
367
 
      <input name="estimated_time" size="6" maxlength="6" value="0.0">
368
 
    </td>
369
 
  </tr>
370
 
  <tr>
371
 
    <td align="right"><strong>Deadline:</strong></td>
372
 
    <td colspan="2">
373
 
      <input name="deadline" size="10" maxlength="10" value="[% deadline FILTER html %]">
374
 
      <small>(YYYY-MM-DD)</small>
375
 
    </td>
376
 
  </tr>
377
 
 
378
 
  <tr>
379
 
    <td>&nbsp;</td>
380
 
    <td colspan="2"></td>
381
 
  </tr>
382
 
[% END %]
383
 
 
384
 
[% IF Param("usebugaliases") %]
385
 
  <tr>
386
 
    <td align="right"><strong>Alias:</strong></td>
387
 
    <td colspan="2">
388
 
      <input name="alias" size="20">
389
 
    </td>
390
 
  </tr>
391
 
[% END %]
392
 
 
393
 
  <tr>
394
 
    <td align="right"><strong>URL:</strong></td>
395
 
    <td colspan="2">
396
 
      <input name="bug_file_loc" size="60"
397
 
             value="[% bug_file_loc FILTER html %]">
398
 
    </td>
399
 
  </tr>
400
 
 
401
 
  [% USE Bugzilla %]
402
 
  [% FOREACH field = Bugzilla.get_fields({ obsolete => 0, custom => 1, 
403
 
                                           enter_bug => 1 }) %]
404
 
    [% SET value = ${field.name} IF ${field.name}.defined %]
405
 
    <tr>
406
 
      [% PROCESS bug/field.html.tmpl editable=1 value_span=2 %]
407
 
    </tr>
408
 
  [% END %]
409
 
 
410
 
  <tr>
411
 
    <td align="right"><strong>Summary:</strong></td>
412
 
    <td colspan="2">
413
 
      <input name="short_desc" size="60" value="[% short_desc FILTER html %]"
414
 
             maxlength="255">
415
 
    </td>
416
 
  </tr>
417
 
 
418
 
  <tr><td align="right" valign="top"><strong>Description:</strong></td>
419
 
    <td colspan="3">
420
 
      [% defaultcontent = BLOCK %]
421
 
        [% IF cloned_bug_id %]
422
 
+++ This [% terms.bug %] was initially created as a clone of [% terms.Bug %] #[% cloned_bug_id %] +++
423
 
 
424
 
 
425
 
        [% END %]
426
 
        [%-# We are within a BLOCK. The comment will be correctly HTML-escaped
427
 
          # by global/textarea.html.tmpl. So we must not escape the comment here. %]
428
 
        [% comment FILTER none %]
429
 
      [%- END %]
430
 
      [% INCLUDE global/textarea.html.tmpl
431
 
         name           = 'comment'
432
 
         id             = 'comment'
433
 
         minrows        = 10
434
 
         maxrows        = 25
435
 
         cols           = constants.COMMENT_COLS
436
 
         defaultcontent = defaultcontent
437
 
       %]
438
 
      <br>
439
 
    </td>
440
 
  </tr>
441
 
 
442
 
  [% IF Param("insidergroup") && user.in_group(Param("insidergroup")) %]
443
 
    <tr>
444
 
      <td></td>
445
 
      <td colspan="3">
446
 
        &nbsp;&nbsp;
447
 
        <input type="checkbox" id="commentprivacy" name="commentprivacy"
448
 
          [% " checked=\"checked\"" IF commentprivacy %]>
449
 
        <label for="commentprivacy">
450
 
          Initial Description is Private
451
 
        </label>
452
 
      </td>
453
 
    </tr>
454
 
  [% END %]
455
 
 
456
 
  <tr>
457
 
    <th align="right" valign="top">Attachment:</th>
458
 
    <td colspan="3">
459
 
      <script type="text/javascript">
460
 
        <!--
461
 
        document.write( '<div id="attachment_false">'
462
 
                      +   '<input type="button" value="Add an attachment" '
463
 
                      +          'onClick="handleWantsAttachment(true)"> '
464
 
                      +   '<em style="display: none">This button has no '
465
 
                      +   'functionality for you because your browser does '
466
 
                      +   'not support CSS or does not use it.<\/em>'
467
 
                      + '<\/div>'
468
 
                      + '<div id="attachment_true" style="display: none">'
469
 
                      +   '<input type="button" '
470
 
                      +          'value="Don\'t add an attachment " '
471
 
                      +          'onClick="handleWantsAttachment(false)">');
472
 
        //-->
473
 
      </script>
474
 
        <fieldset>
475
 
          <legend>Add an attachment</legend>
476
 
          <table class="attachment_entry">
477
 
            [% PROCESS attachment/createformcontents.html.tmpl
478
 
                       flag_types = product.flag_types.attachment
479
 
                       any_flags_requesteeble = 1
480
 
                       flag_table_id ="attachment_flags" %]
481
 
          </table>
482
 
        </fieldset>
483
 
      <script type="text/javascript">
484
 
        <!--
485
 
        document.write('<\/div>');
486
 
        //-->
487
 
      </script>
488
 
    </td>
489
 
  </tr>
490
 
 
491
 
  [% IF user.in_group('editbugs', product.id) %]
492
 
    [% IF use_keywords %]
493
 
      <tr>
494
 
        <td align="right" valign="top">
495
 
          <strong>
496
 
            <a href="describekeywords.cgi">Keywords</a>:
497
 
          </strong>
498
 
        </td>
499
 
        <td colspan="3">
500
 
          <input name="keywords" size="60" value="[% keywords FILTER html %]"> (optional)
501
 
        </td>
502
 
      </tr>
503
 
    [% END %]
504
 
    <tr>
505
 
      <td align="right">
506
 
        <strong>Depends on:</strong>
507
 
      </td>
508
 
      <td>
509
 
        <input name="dependson" accesskey="d" value="[% dependson FILTER html %]">
510
 
      </td>
511
 
    </tr>
512
 
    <tr>
513
 
      <td align="right">
514
 
        <strong>Blocks:</strong>
515
 
      </td>
516
 
      <td>
517
 
        <input name="blocked" accesskey="b" value="[% blocked FILTER html %]">
518
 
      </td>
519
 
    </tr>
520
 
  [% END %]
521
 
 
522
 
  <tr>
523
 
    <td></td>
524
 
    <td colspan="3">
525
 
    [% IF group.size %]
526
 
      <br>
527
 
        <strong>
528
 
          Only users in all of the selected groups can view this [% terms.bug %]:
529
 
        </strong>
530
 
      <br>
531
 
      <font size="-1">
532
 
        (Leave all boxes unchecked to make this a public [% terms.bug %].)
533
 
      </font>
534
 
      <br>
535
 
      <br>
536
 
 
537
 
      <!-- Checkboxes -->
538
 
      [% FOREACH g = group %]
539
 
        &nbsp;&nbsp;&nbsp;&nbsp;
540
 
        <input type="checkbox" id="bit-[% g.bit %]"
541
 
          name="bit-[% g.bit %]" value="1"
542
 
          [% " checked=\"checked\"" IF g.checked %]>
543
 
          <label for="bit-[% g.bit %]">[% g.description FILTER html_light %]</label><br>
544
 
      [% END %]
545
 
      <br>
546
 
    [% END %]
547
 
    </td>
548
 
  </tr>
549
 
 
550
 
  [%# Form controls for entering additional data about the bug being created. %]
551
 
  [% Hook.process("form") %]
552
 
 
553
 
  <tr>
554
 
    <td></td>
555
 
    <td colspan="3">
556
 
      <input type="submit" id="commit" value="    Commit    "
557
 
             onclick="if (this.form.short_desc.value == '')
558
 
             { alert('Please enter a summary sentence for this [% terms.bug %].');
559
 
               return false; } return true;">
560
 
      &nbsp;&nbsp;&nbsp;&nbsp;
561
 
      <input type="submit" name="maketemplate" id="maketemplate"
562
 
             value="Remember values as bookmarkable template">
563
 
    </td>
564
 
  </tr>
565
 
 
566
 
[% UNLESS (Param('defaultplatform') && Param('defaultopsys')) %]
567
 
  <tr>
568
 
    <td></td>
569
 
    <td colspan="3">
570
 
      <br>
571
 
      We've made a guess at your
572
 
  [% IF Param('defaultplatform') %]
573
 
      operating system. Please check it
574
 
  [% ELSIF Param('defaultopsys') %]
575
 
      platform. Please check it
576
 
  [% ELSE %]
577
 
      operating system and platform. Please check them
578
 
  [% END %]
579
 
      and, if we got it wrong, email
580
 
      [%+ Param('maintainer') %].
581
 
    </td>
582
 
  </tr>
583
 
[% END %]
584
 
 
585
 
  </table>
586
 
  <input type="hidden" name="form_name" value="enter_bug">
587
 
</form>
588
 
 
589
 
[%# Links or content with more information about the bug being created. %]
590
 
[% Hook.process("end") %]
591
 
 
592
 
[% PROCESS global/footer.html.tmpl %]
593
 
 
594
 
[%############################################################################%]
595
 
[%# Block for SELECT fields                                                  #%]
596
 
[%############################################################################%]
597
 
 
598
 
[% BLOCK select %]
599
 
  [% IF sel.description %]
600
 
  <td align="right">
601
 
    <strong>
602
 
      <a href="page.cgi?id=fields.html#[% sel.name %]">
603
 
        [% sel.description %]</a>:
604
 
    </strong>
605
 
  </td>
606
 
  [% END %]
607
 
 
608
 
  <td>
609
 
    <select name="[% sel.name %]">
610
 
    [%- FOREACH x = ${sel.name} %]
611
 
      <option value="[% x FILTER html %]"
612
 
        [% " selected=\"selected\"" IF x == default.${sel.name} %]>
613
 
        [% IF sel.name == "bug_status" %]
614
 
          [% status_descs.$x FILTER html %]
615
 
        [% ELSE %]
616
 
          [% x FILTER html %]
617
 
        [% END %]</option>
618
 
    [% END %]
619
 
    </select>
620
 
  </td>
621
 
[% END %]