aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'template/en/custom/bug/create/create.html.tmpl')
-rw-r--r--template/en/custom/bug/create/create.html.tmpl831
1 files changed, 831 insertions, 0 deletions
diff --git a/template/en/custom/bug/create/create.html.tmpl b/template/en/custom/bug/create/create.html.tmpl
new file mode 100644
index 000000000..e8050a1d3
--- /dev/null
+++ b/template/en/custom/bug/create/create.html.tmpl
@@ -0,0 +1,831 @@
+[%# This Source Code Form is subject to the terms of the Mozilla Public
+ # License, v. 2.0. If a copy of the MPL was not distributed with this
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ #
+ # This Source Code Form is "Incompatible With Secondary Licenses", as
+ # defined by the Mozilla Public License, v. 2.0.
+ #%]
+
+[% title = BLOCK %]Enter [% terms.Bug %]: [% product.name FILTER html %][% END %]
+[% use_qa_contact = Param("useqacontact") %]
+
+[% PROCESS global/header.html.tmpl
+ title = title
+ generate_api_token = 1
+ yui = [ 'autocomplete', 'calendar', 'datatable', 'button' ]
+ style_urls = ['skins/standard/bug.css']
+ javascript_urls = [ "js/attachment.js", "js/util.js",
+ "js/field.js", "js/TUI.js", "js/bug.js" ]
+ onload = "set_assign_to($use_qa_contact); hideElementById('attachment_true');
+ showElementById('attachment_false'); showElementById('btn_no_attachment');"
+%]
+
+<script type="text/javascript">
+<!--
+
+var initialowners = new Array([% product.components.size %]);
+var last_initialowner;
+var initialccs = new Array([% product.components.size %]);
+var components = new Array([% product.components.size %]);
+var comp_desc = new Array([% product.components.size %]);
+var flags = new Array([% product.components.size %]);
+[% IF Param("useqacontact") %]
+ var initialqacontacts = new Array([% product.components.size %]);
+ var last_initialqacontact;
+[% END %]
+[% count = 0 %]
+[%- FOREACH c = product.components %]
+ [% NEXT IF NOT c.is_active %]
+ components[[% count %]] = "[% c.name FILTER js %]";
+ comp_desc[[% count %]] = "[% c.description FILTER html_light FILTER js %]";
+ initialowners[[% count %]] = "[% c.default_assignee.login FILTER js %]";
+ [% flag_list = [] %]
+ [% FOREACH f = c.flag_types.bug %]
+ [% NEXT UNLESS f.is_active %]
+ [% flag_list.push(f.id) %]
+ [% END %]
+ [% FOREACH f = c.flag_types.attachment %]
+ [% NEXT UNLESS f.is_active %]
+ [% flag_list.push(f.id) %]
+ [% END %]
+ flags[[% count %]] = [[% flag_list.join(",") FILTER js %]];
+ [% IF Param("useqacontact") %]
+ initialqacontacts[[% count %]] = "[% c.default_qa_contact.login FILTER js %]";
+ [% END %]
+
+ [% SET initial_cc_list = [] %]
+ [% FOREACH cc_user = c.initial_cc %]
+ [% initial_cc_list.push(cc_user.login) %]
+ [% END %]
+ initialccs[[% count %]] = "[% initial_cc_list.join(', ') FILTER js %]";
+
+ [% count = count + 1 %]
+[%- END %]
+
+var status_comment_required = new Array();
+[% FOREACH status = bug_status %]
+ status_comment_required['[% status.name FILTER js %]'] =
+ [% status.comment_required_on_change_from() ? 'true' : 'false' %]
+[% END %]
+
+TUI_alternates['expert_fields'] = 'Show Advanced Fields';
+// Hide the Advanced Fields by default, unless the user has a cookie
+// that specifies otherwise.
+TUI_hide_default('expert_fields');
+// Also hide the "Paste text as attachment" textarea by default.
+TUI_hide_default('attachment_text_field');
+-->
+</script>
+
+[%# Migration note: The following file corresponds to the old Param
+# 'entryheaderhtml'
+#%]
+[% PROCESS 'bug/create/user-message.html.tmpl' %]
+
+<div class="panel panel-default">
+<div class="panel-body">
+
+ <h2 style="margin-top:0px;">Enter A Bug</h2>
+ <div class="row" style="margin-bottom:10px;">
+ <div class="col-sm-12">
+ <a id="expert_fields_controller" class="controller bz_default_hidden pull-right"
+ href="javascript:TUI_toggle_class('expert_fields')">Hide
+ Advanced Fields</a>
+ [%# Show the link if the browser supports JS %]
+ <script type="text/javascript">
+ YAHOO.util.Dom.removeClass('expert_fields_controller',
+ 'bz_default_hidden');
+ </script>
+ </div>
+ </div>
+
+<form name="Create" id="Create" method="post" action="post_bug.cgi"
+ class="enter_bug_form" enctype="multipart/form-data"
+ onsubmit="return validateEnterBug(this)">
+<input type="hidden" name="product" value="[% product.name FILTER html %]">
+ <input type="hidden" name="token" value="[% token FILTER html %]">
+ <input type="hidden" name="version"
+ value="[% default.version FILTER html %]">
+
+
+ <div class="row">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Product</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ [% product.name %]
+ </div>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="row">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Reporter</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ [% user.login %]
+ </div>
+ </div>
+ </div>
+ </div>
+
+
+ <div class="row">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Component</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-4">
+ <select name="component" id="component" onchange="set_assign_to([% Param("useqacontact") %]);"
+ size="7" aria-required="true" class="">
+ [%# Build the lists of assignees and QA contacts if "usemenuforusers" is enabled. %]
+ [% IF Param("usemenuforusers") %]
+ [% assignees_list = user.get_userlist.clone %]
+ [% qa_contacts_list = user.get_userlist.clone %]
+ [% END %]
+
+ [%- FOREACH c = product.components %]
+ [% NEXT IF NOT c.is_active %]
+ <option value="[% c.name FILTER html %]"
+ id="v[% c.id FILTER html %]_component"
+ [% IF c.name.lower == default.component_.lower %]
+ [%# This is for bug/field.html.tmpl, for visibility-related
+ # controls. %]
+ [% default.component_id = c.id %]
+ selected="selected"
+ [% END %]>
+ [% c.name FILTER html -%]
+ </option>
+ [% IF Param("usemenuforusers") %]
+ [% INCLUDE build_userlist default_user = c.default_assignee,
+ userlist = assignees_list %]
+ [% INCLUDE build_userlist default_user = c.default_qa_contact,
+ userlist = qa_contacts_list %]
+ [% END %]
+ [%- END %]
+ </select>
+ </div>
+
+ <div class="col-sm-8">
+ <div id="comp_desc" class="comment">Select a component to read its description.</div>
+ <script type="text/javascript">
+ <!--
+ [%+ INCLUDE "bug/field-events.js.tmpl"
+ field = bug_fields.component, product = product %]
+ //-->
+ </script>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="row">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Severity</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = bug_fields.bug_severity, editable = 1, no_tds = 1,
+ value = default.bug_severity %]
+ </div>
+ </div>
+ </div>
+ </div>
+
+[% IF Param('letsubmitterchoosepriority') %]
+ <div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Priority</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = bug_fields.priority, editable = 1, no_tds = 1,
+ value = default.priority %]
+ </div>
+ </div>
+ </div>
+ </div>
+[% END %]
+
+
+<div class="row">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Hardware</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = bug_fields.rep_platform, editable = 1, no_tds = 1,
+ value = default.rep_platform %]
+ </div>
+ </div>
+ </div>
+</div>
+
+
+ [% IF user.in_group('editbugs', product.id) %]
+ <div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Depends on</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ <input name="dependson" accesskey="d" value="[% dependson FILTER html %]">
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Blocks</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ <input name="blocked" accesskey="b" value="[% blocked FILTER html %]">
+ </div>
+ </div>
+ </div>
+ </div>
+ [% END %]
+
+
+
+
+ <div class="row">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>OS</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-2">
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = bug_fields.op_sys, editable = 1, no_tds = 1,
+ value = default.op_sys %]
+ [% IF (!Param('defaultplatform') || !Param('defaultopsys')) && !cloned_bug_id %]
+ </div>
+ <div class="col-sm-10">
+ <div class="text-success">We've made a guess at your
+ [% IF Param('defaultplatform') %]
+ operating system. Please check it
+ [% ELSIF Param('defaultopsys') %]
+ platform. Please check it
+ [% ELSE %]
+ operating system and platform. Please check them
+ [% END %]
+ and make any corrections if necessary.</div>
+ [% END %]
+ </div>
+ </div>
+ </div>
+ </div>
+
+
+
+ <div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Status</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = bug_fields.bug_status, no_tds = 1,
+ editable = (bug_status.size > 1), value = default.bug_status
+ override_legal_values = bug_status %]
+
+ <!-- TODO:
+ [%# Calculate the number of rows we can use for flags %]
+ [% num_rows = 6 + (Param("useqacontact") ? 1 : 0) +
+ (user.is_timetracker ? 3 : 0)
+ %]
+
+ <td rowspan="[% num_rows FILTER html %]">
+ [% IF product.flag_types.bug.size > 0 %]
+ [% display_flag_headers = 0 %]
+ [% any_flags_requesteeble = 0 %]
+
+ [% FOREACH flag_type = product.flag_types.bug %]
+ [% NEXT UNLESS flag_type.is_active %]
+ [% display_flag_headers = 1 %]
+ [% SET any_flags_requesteeble = 1 IF flag_type.is_requestable && flag_type.is_requesteeble %]
+ [% END %]
+
+ [% IF display_flag_headers %]
+ [% PROCESS "flag/list.html.tmpl" flag_types = product.flag_types.bug
+ any_flags_requesteeble = any_flags_requesteeble
+ flag_table_id = "bug_flags"
+ %]
+ [% END %]
+ [% END %]
+ </td>
+ -->
+ </div>
+ </div>
+ </div>
+</div>
+
+
+<div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Assignee</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ <!--
+ [% INCLUDE "bug/field-label.html.tmpl"
+ field = bug_fields.assigned_to editable = 1
+ %]
+
+ <!-- TODO: show suggestions -->
+ [% INCLUDE global/userselect.html.tmpl
+ id => "assigned_to"
+ name => "assigned_to"
+ value => assigned_to
+ disabled => assigned_to_disabled
+ size => 30
+ emptyok => 1
+ custom_userlist => assignees_list
+ %]
+ </div>
+ </div>
+ </div>
+ </div>
+
+
+<div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>CC</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ <!--
+ [% INCLUDE "bug/field-label.html.tmpl"
+ field = bug_fields.cc editable = 1
+ %]
+
+ -->
+
+ [% INCLUDE global/userselect.html.tmpl
+ id => "cc"
+ name => "cc"
+ value => cc
+ disabled => cc_disabled
+ size => 30
+ multiple => 5
+ %]
+ </div>
+ </div>
+ </div>
+</div>
+
+<div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Default CC</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ <div id="initial_cc">
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+
+<div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Alias</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ <input name="alias" size="20" value="[% alias FILTER html %]">
+ </div>
+ </div>
+ </div>
+</div>
+
+<div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>URL</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ <input name="bug_file_loc" id="bug_file_loc" class="text_input"
+ size="40" value="[% bug_file_loc FILTER html %]">
+ </div>
+ </div>
+ </div>
+</div>
+
+
+[% IF user.is_timetracker %]
+ <div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Orig. Est.</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ <input name="estimated_time" size="6" maxlength="6" value="[% estimated_time FILTER html %]">
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Deadline</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = bug_fields.deadline, value = deadline, no_tds = 1,
+ editable = 1, value_span = 2 %]
+ </div>
+ </div>
+ </div>
+ </div>
+[% END %]
+
+<div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Arches</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ [% Hook.process("after_cc_field") %]
+ </div>
+ </div>
+ </div>
+</div>
+
+ <div class="row">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Summary</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ <input name="short_desc" size="70" value="[% short_desc FILTER html %]"
+ maxlength="255" spellcheck="true" aria-required="true"
+ class="text_input form-control selectwidthauto" id="short_desc">
+ </div>
+ </div>
+ </div>
+ </div>
+
+[% IF feature_enabled('jsonrpc') AND !cloned_bug_id AND user.settings.possible_duplicates.value == 'on' %]
+ <div class="row">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Possible Duplicates</b>
+ </div>
+ <div class="col-sm-10">
+
+ <div id="possible_duplicates"></div>
+ <script type="text/javascript">
+ var dt_columns = [
+ { key: "id", label: "[% field_descs.bug_id FILTER js %]",
+ formatter: YAHOO.bugzilla.dupTable.formatBugLink },
+ { key: "summary",
+ label: "[% field_descs.short_desc FILTER js %]",
+ formatter: "text" },
+ { key: "status",
+ label: "[% field_descs.bug_status FILTER js %]",
+ formatter: YAHOO.bugzilla.dupTable.formatStatus },
+ { key: "update_token", label: '',
+ formatter: YAHOO.bugzilla.dupTable.formatCcButton }
+ ];
+ YAHOO.bugzilla.dupTable.addCcMessage = "Add Me to the CC List";
+ YAHOO.bugzilla.dupTable.init({
+ container: 'possible_duplicates',
+ columns: dt_columns,
+ product_name: '[% product.name FILTER js %]',
+ summary_field: 'short_desc',
+ options: {
+ MSG_LOADING: 'Searching for possible duplicates...',
+ MSG_EMPTY: 'No possible duplicates found.',
+ SUMMARY: 'Possible Duplicates'
+ }
+ });
+ </script>
+
+ </div>
+ </div>
+[% END %]
+
+
+ <div class="row">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Description</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ [% defaultcontent = BLOCK %]
+ [%-# We are within a BLOCK. The comment will be correctly HTML-escaped
+ # by global/textarea.html.tmpl. So we must not escape the comment here. %]
+ [% comment FILTER none %]
+ [%- END %]
+ [% INCLUDE bug/comment.html.tmpl
+ minrows = 10
+ maxrows = 25
+ cols = constants.COMMENT_COLS
+ defaultcontent = defaultcontent
+ %]
+ </div>
+ </div>
+ </div>
+ </div>
+
+
+ [% IF Param('use_see_also') %]
+ <div class="row expert_fields">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>See also</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ [% INCLUDE bug/field.html.tmpl
+ bug = default
+ field = bug_fields.see_also
+ editable = 1
+ value = see_also
+ %]
+ </div>
+ </div>
+ </div>
+ </div>
+ [% END %]
+
+
+
+ [% IF Param("maxattachmentsize") || Param("maxlocalattachment") %]
+ <div class="row">
+ <div class="col-sm-2 align-h-right" style="padding-right: 0px;text-align:right;">
+ <b>Attachment</b>
+ </div>
+ <div class="col-sm-10">
+ <div class="row">
+ <div class="col-sm-12">
+ <div id="attachment_false" class="bz_default_hidden">
+ <input class="btn btn-default" type="button" value="Add an attachment" onClick="handleWantsAttachment(true)">
+ </div>
+
+ <div id="attachment_true">
+ <input type="button" id="btn_no_attachment" value="Don't add an attachment"
+ class="bz_default_hidden" onClick="handleWantsAttachment(false)">
+ <fieldset>
+ <legend>Add an attachment</legend>
+ <table class="attachment_entry">
+ [% PROCESS attachment/createformcontents.html.tmpl
+ flag_types = product.flag_types.attachment
+ any_flags_requesteeble = 1
+ flag_table_id ="attachment_flags" %]
+ </table>
+ </fieldset>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+[% END %]
+
+
+
+<!-- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
+<!-- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
+<!-- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
+<!-- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
+<!-- ////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -->
+
+
+
+
+
+
+
+[% IF Param("useqacontact") %]
+<div class="panel panel-default expert_fields">
+<div class="panel-heading">
+ <h3 class="panel-title">QA Contract</h3>
+</div>
+<div class="panel-body" >
+ [% INCLUDE "bug/field-label.html.tmpl"
+ field = bug_fields.qa_contact editable = 1
+ %]
+
+ <!--
+ <td colspan="2">
+ [% INCLUDE global/userselect.html.tmpl
+ id => "qa_contact"
+ name => "qa_contact"
+ value => qa_contact
+ disabled => qa_contact_disabled
+ size => 30
+ emptyok => 1
+ custom_userlist => qa_contacts_list
+ %]
+ <noscript>(Leave blank to assign to default qa contact)</noscript>
+ -->
+
+</div>
+</div>
+[% END %]
+
+
+
+
+
+
+
+
+
+[% USE Bugzilla %]
+
+[% FOREACH field = Bugzilla.active_custom_fields %]
+[% NEXT UNLESS field.enter_bug %]
+[% SET value = ${field.name}.defined ? ${field.name} : "" %]
+<tr [% 'class="expert_fields"' IF !field.is_mandatory %]>
+[% INCLUDE bug/field.html.tmpl
+bug = default, field = field, value = value, editable = 1,
+value_span = 3 %]
+</tr>
+[% END %]
+
+
+
+
+
+[% IF user.is_insider %]
+<tr class="expert_fields">
+<th>&nbsp;</th>
+<td colspan="3">
+ &nbsp;&nbsp;
+ <input type="checkbox" id="comment_is_private" name="comment_is_private"
+ [% ' checked="checked"' IF comment_is_private %]
+ onClick="updateCommentTagControl(this, 'comment')">
+ <label for="comment_is_private">
+ Make description and any new attachment private (visible only to members
+ of the <strong>[% Param('insidergroup') FILTER html %]</strong> group)
+ </label>
+</td>
+</tr>
+<script>
+updateCommentTagControl(document.getElementById('comment_is_private'), 'comment');
+</script>
+[% END %]
+
+[% IF use_keywords %]
+<div class="panel panel-default">
+<div class="panel-heading">
+ <h3 class="panel-title">Keywords</h3>
+</div>
+<div class="panel-body" >
+ [% INCLUDE bug/field.html.tmpl
+ bug = default, field = bug_fields.keywords, editable = 1,
+ value = keywords, possible_values = all_keywords,
+ desc_url = "describekeywords.cgi", value_span = 3
+ %]
+</div>
+</div>
+[% END %]
+
+
+
+
+<table>
+
+<tbody class="expert_fields">
+ <tr>
+ [% IF Param('usetargetmilestone') && Param('letsubmitterchoosemilestone') %]
+ [% INCLUDE select field = bug_fields.target_milestone %]
+ [% ELSE %]
+ <td colspan="2">&nbsp;</td>
+ [% END %]
+
+ <td colspan="2">&nbsp;</td>
+ </tr>
+</tbody>
+
+
+
+<tbody class="expert_fields">
+ [% IF product.groups_available.size %]
+ <tr>
+ <th>&nbsp;</th>
+ <td colspan="3">
+ <br>
+ <strong>
+ Only users in [%+ IF Param('or_groups') %]at least one[% ELSE %]all[% END %] of the selected groups can view this
+ [%+ terms.bug %]:
+ </strong>
+ <br>
+ <span class="bz_info">
+ (Leave all boxes unchecked to make this a public [% terms.bug %].)
+ </span>
+ <br>
+ <br>
+
+ <!-- Checkboxes -->
+ <input type="hidden" name="defined_groups" value="1">
+ [% FOREACH group = product.groups_available %]
+ <input type="checkbox" id="group_[% group.id FILTER html %]"
+ name="groups" value="[% group.name FILTER html %]"
+ [% ' checked="checked"' IF default.groups.contains(group.name)
+ OR group.is_default %]>
+ <label for="group_[% group.id FILTER html %]">
+ [%- group.description FILTER html_light %]</label><br>
+ [% END %]
+ </td>
+ </tr>
+ [% END %]
+</tbody>
+</table>
+
+
+[%# Form controls for entering additional data about the bug being created. %]
+[% Hook.process("form") %]
+
+<hr/>
+<input class="btn btn-primary pull-right" type="submit" id="commit" value="Submit [% terms.Bug %]">
+&nbsp;&nbsp;&nbsp;&nbsp;
+<input class="btn btn-default pull-right expert_fields" type="submit" name="maketemplate" id="maketemplate"
+ value="Remember values as bookmarkable template"
+ onclick="bz_no_validate_enter_bug=true" style="margin-right:10px;">
+<input type="hidden" name="form_name" value="enter_bug">
+
+
+</form>
+</div>
+</div>
+
+<br/>
+<br/>
+
+[%# Links or content with more information about the bug being created. %]
+[% Hook.process("end") %]
+
+[% PROCESS global/footer.html.tmpl %]
+
+[%############################################################################%]
+[%# Block for SELECT fields #%]
+[%############################################################################%]
+
+[% BLOCK select %]
+
+ [% INCLUDE "bug/field-label.html.tmpl"
+ field = field editable = 1
+ %]
+ <td>
+ <select name="[% field.name FILTER html %]"
+ id="[% field.name FILTER html %]">
+ [%- FOREACH x = ${field.name} %]
+ [% NEXT IF NOT x.is_active %]
+ <option value="[% x.name FILTER html %]"
+ [% " selected=\"selected\"" IF x.name == default.${field.name} %]>
+ [% display_value(field.name, x.name) FILTER html %]
+ </option>
+ [% END %]
+ </select>
+ </td>
+[% END %]
+
+[% BLOCK build_userlist %]
+ [% user_found = 0 %]
+ [% default_login = default_user.login %]
+ [% RETURN UNLESS default_login %]
+
+ [% FOREACH user = userlist %]
+ [% IF user.login == default_login %]
+ [% user_found = 1 %]
+ [% LAST %]
+ [% END %]
+ [% END %]
+
+ [% userlist.push({login => default_login,
+ identity => default_user.identity,
+ visible => 1})
+ UNLESS user_found %]
+[% END %]