summaryrefslogtreecommitdiffstats
path: root/template/en/default/search/form.html.tmpl
diff options
context:
space:
mode:
Diffstat (limited to 'template/en/default/search/form.html.tmpl')
-rw-r--r--template/en/default/search/form.html.tmpl423
1 files changed, 0 insertions, 423 deletions
diff --git a/template/en/default/search/form.html.tmpl b/template/en/default/search/form.html.tmpl
deleted file mode 100644
index f310420..0000000
--- a/template/en/default/search/form.html.tmpl
+++ /dev/null
@@ -1,423 +0,0 @@
-[%# 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): Chris Lahey <clahey@ximian.com> [javascript fixes]
- # Christian Reis <kiko@async.com.br> [javascript rewrite]
- # Gervase Markham <gerv@gerv.net>
- # Guy Pyrzak <guy.pyrzak@gmail.com>
- #%]
-
-[% PROCESS "global/field-descs.none.tmpl" %]
-
-<script type="text/javascript">
-
-var first_load = true; [%# is this the first time we load the page? %]
-var last_sel = new Array(); [%# caches last selection %]
-
-[% IF Param('useclassification') %]
-var useclassification = true;
-var prods = new Array();
-[% ELSE %]
-var useclassification = false;
-[% END %]
-var cpts = new Array();
-var vers = new Array();
-[% IF Param('usetargetmilestone') %]
-var tms = new Array();
-[% END %]
-
-[%# Create an array of products, indexed by the classification #%]
-
-[% nclass = 0 %]
-[% FOREACH c = classification %]
- prods[[% nclass FILTER js %]] = [
- [% sep = '' %]
- [%- FOREACH item = user.get_selectable_products(c.id) -%]
- [%- IF item.components.size -%]
- [%- sep FILTER js %]'[% item.name FILTER js %]'
- [%- sep = ',' -%]
- [%- END -%]
- [%- END -%] ];
- [% nclass = nclass+1 %]
-[% END %]
-
-[%# Create three arrays of components, versions and target milestones, indexed
- # numerically according to the product they refer to. #%]
-
-[% n = 0 %]
-[% FOREACH p = product %]
- [% NEXT IF NOT p.components.size %]
- [% IF Param('useclassification') %]
- prods['[% p.name FILTER js %]'] = [% n %]
- [% END %]
- cpts[[% n %]] = [
- [%- FOREACH item = p.components %]'[% item.name FILTER js %]'[% ", " UNLESS loop.last %] [%- END -%] ];
- vers[[% n %]] = [
- [%- FOREACH item = p.versions -%]'[% item.name FILTER js %]'[% ", " UNLESS loop.last %] [%- END -%] ];
- [% IF Param('usetargetmilestone') %]
- tms[[% n %]] = [
- [%- FOREACH item = p.milestones %]'[% item.name FILTER js %]'[% ", " UNLESS loop.last %] [%- END -%] ];
- [% END %]
- [% n = n+1 %]
-[% END %]
-
-/*
- * doOnSelectProduct determines which selection should get updated
- *
- * - selectmode = 0 - init
- * selectmode = 1 - classification selected
- * selectmode = 2 - product selected
- *
- * globals:
- * queryform - string holding the name of the selection form
- */
-function doOnSelectProduct(selectmode) {
- var f = document.forms[queryform];
- var milestone = (typeof(f.target_milestone) == "undefined" ?
- null : f.target_milestone);
- if (selectmode == 0) {
- // If there is no classification selected, give us a chance to fill
- // the select fields with values from the possibly selected product.
- if (useclassification && f.classification.selectedIndex > -1) {
- selectClassification(f.classification, f.product, f.component, f.version, milestone);
- } else {
- selectProduct(f.product, f.component, f.version, milestone, null);
- }
- } else if (selectmode == 1) {
- selectClassification(f.classification, f.product, f.component, f.version, milestone);
- } else {
- selectProduct(f.product, f.component, f.version, milestone, null);
- }
-}
-
-// Hide the Advanced Fields by default, unless the user has a cookie
-// that specifies otherwise.
-// &#9656; and &#9662; are both utf8 escaped characters for right
-// and down facing arrows respectivly.
-TUI_alternates['history_query'] = '&#9658;';
-TUI_alternates['people_query'] = '&#9658;';
-TUI_alternates['information_query'] = '&#9658;';
-
-TUI_hide_default('history_query');
-TUI_hide_default('people_query');
-TUI_hide_default('information_query');
-</script>
-
-[% query_types = [
- "allwordssubstr",
- "anywordssubstr",
- "substring",
- "casesubstring",
- "allwords",
- "anywords",
- "regexp",
- "notregexp",
-] %]
-
-[%# If we resubmit to ourselves, we need to know if we are using a format. %]
-[% thisformat = query_format != '' ? query_format : format %]
-<input type="hidden" name="query_format" value="[% thisformat FILTER html %]">
-
-[%# *** Summary *** %]
-
- <div class="search_field_row" id="summary_field">
- [% INCLUDE "search/field.html.tmpl"
- field = bug_fields.short_desc
- types = query_types
- value = default.short_desc.0
- type_selected = default.short_desc_type.0
- accesskey = "s"
- %]
- <script type="text/javascript"> <!--
- document.forms[queryform].short_desc.focus();
- // -->
- </script>
-
- [% IF button_name %]
- <input type="submit" id="[% button_name FILTER css_class_quote %]_top"
- value="[% button_name FILTER html %]">
- [% END %]
- </div>
-
-[%# *** Classification Product Component *** %]
-
-[% Hook.process('before_selects_top') %]
-[% IF Param('useclassification') %]
- [% fake_classfication = { name => bug_fields.classification.name,
- type => constants.FIELD_TYPE_SINGLE_SELECT } %]
- [% INCLUDE "search/field.html.tmpl"
- field => fake_classfication
- accesskey => "c"
- onchange => "doOnSelectProduct(1);"
- value => default.classification
- %]
-[% END %]
-
-[% INCLUDE "search/field.html.tmpl"
- field => bug_fields.product
- accesskey => "p"
- onchange => "doOnSelectProduct(2);"
- value => default.product
-%]
-[% INCLUDE "search/field.html.tmpl"
- field => bug_fields.component
- accesskey => "m"
- value => default.component
-%]
-[% INCLUDE "search/field.html.tmpl"
- field => bug_fields.bug_status
- accesskey => "a"
- value => default.bug_status
-%]
-[% INCLUDE "search/field.html.tmpl"
- field => bug_fields.resolution
- accesskey => "r"
- value => default.resolution
-%]
-
-[% Hook.process('after_selects_top') %]
-
-<div id="detailed_information" class="bz_section_title">
- <div id="information_query_controller" class="arrow">&#9660;</div>
- <a href="javascript:TUI_toggle_class('information_query')">
- Detailed [% terms.Bug %] Information
- </a>
- <span class="section_help">Narrow results by the following fields:
- [%+ field_descs.longdesc FILTER html %]s, [%+ field_descs.bug_file_loc FILTER html %],
- [% IF Param('usestatuswhiteboard') %] [%+ field_descs.status_whiteboard FILTER html %], [%+ END %]
- [% IF use_keywords %] [%+ field_descs.keywords FILTER html %], [%+ END %]
- [% IF user.is_timetracker %] [%+ field_descs.deadline FILTER html %], [%+ END %]
- [% terms.Bug %] Numbers, [%+ field_descs.version FILTER html %],
- [% IF Param('usetargetmilestone') %] [%+ field_descs.target_milestone FILTER html %], [%+ END %]
- [% field_descs.bug_severity FILTER html %], [%+ field_descs.priority FILTER html %], [%+ field_descs.rep_platform FILTER html %],
- [%+ field_descs.op_sys FILTER html %]
- </span>
-</div>
-[%# *** Comment URL Whiteboard Keywords *** %]
-<div id="detailed_information_section" class="bz_search_section information_query">
- [% SET freetext_fields = [
- { field => bug_fields.longdesc, accesskey => 'c' },
- { field => bug_fields.bug_file_loc, accesskey => 'u' },
- { field => bug_fields.status_whiteboard, accesskey => 'w' },
- { field => bug_fields.keywords, accesskey => 'k',
- qtypes => ['allwords', 'anywords', 'nowords', 'regexp', 'notregexp'] }
- ] %]
- [% Hook.process('before_freetext_fields') %]
-
- [%# loop through a bunch of free text fields and print out their text stuff %]
- [% FOREACH field_container = freetext_fields %]
- [% NEXT IF field_container.field.name == 'status_whiteboard'
- AND NOT Param('usestatuswhiteboard')
- %]
- [% NEXT IF field_container.field.name == 'keywords'
- AND NOT use_keywords
- %]
- <div class="search_field_row">
- [% type = field_container.field.name _ "_type" %]
- [% INCLUDE "search/field.html.tmpl"
- field => field_container.field
- types => field_container.qtypes || query_types
- accesskey => field_container.accesskey
- value => default.${field_container.field.name}.0
- type_selected => default.$type.0
- %]
- </div>
- [% END %]
-
- [%# Deadline %]
- [% IF user.is_timetracker %]
- <div class="search_field_row">
- [% INCLUDE "search/field.html.tmpl"
- field = bug_fields.deadline
- accesskey = "l"
- value = [ default.deadlinefrom.0, default.deadlineto.0 ]
- %]
- </div>
- [% END %]
-
- <div class="search_field_row">
- <span class="field_label"><label for="bug_id">[% terms.Bugs %] numbered</label></span>
- <div id="bug_id_container" >
- <input type="text" name="bug_id" id="bug_id"
- value="[% default.bug_id.0 FILTER html %]" size="20">
- <div class="field_help">(comma-separated list)</div>
- </div>
- should be
- <select name="bug_id_type" id="bug_id_type">
- <option value="anyexact"[% " selected" IF default.bug_id_type.0 == "anyexact" %]>only included in</option>
- <option value="nowords"[% " selected" IF default.bug_id_type.0 == "nowords" %]>excluded from</option>
- </select> the results
- </div>
-
- [% Hook.process('after_freetext_fields') %]
-
- [%# *** Status Resolution Severity Priority Hardware OS *** %]
- <div>
- [% Hook.process('before_selects_bottom') %]
- [% fake_version_field = { name => bug_fields.version.name,
- type => constants.FIELD_TYPE_SINGLE_SELECT }%]
- [% INCLUDE "search/field.html.tmpl"
- field => fake_version_field
- value => default.version
- %]
- [% IF Param('usetargetmilestone') %]
- [% fake_target_milestone_field = { name => bug_fields.target_milestone.name ,
- type => constants.FIELD_TYPE_SINGLE_SELECT } %]
- [% INCLUDE "search/field.html.tmpl"
- field => fake_target_milestone_field
- value => default.target_milestone
- %]
- [% END %]
- [% INCLUDE "search/field.html.tmpl"
- field => bug_fields.bug_severity
- accesskey=> "v"
- value => default.bug_severity
- %]
- [% INCLUDE "search/field.html.tmpl"
- field => bug_fields.priority
- accesskey => "i"
- value => default.priority
- %]
- [% INCLUDE "search/field.html.tmpl"
- field => bug_fields.rep_platform
- accesskey =>"h"
- value => default.rep_platform
- %]
- [% INCLUDE "search/field.html.tmpl"
- field => bug_fields.op_sys
- accesskey =>"o"
- value => default.op_sys
- %]
- [% Hook.process('after_selects_bottom') %]
- </div>
-</div>
-[%# *** Email Numbering *** %]
- <div class="bz_section_title" id="people_filter">
- <div id="people_query_controller" class="arrow">&#9660;</div>
- <a href="javascript:TUI_toggle_class('people_query')">Search By People</a>
- <span>Narrow results to a role (i.e. [% field_descs.assigned_to FILTER html %],
- [%+ field_descs.reporter FILTER html %], [% field_descs.commenter FILTER html %],
- etc.) a person has on [% terms.abug %]
- </span>
- </div>
- <div id="people_filter_section" class="bz_search_section people_query">
- [% FOREACH n = [1, 2, 3] %]
- <div class="search_email_fields">
- Any of:
- [% PROCESS role_types field = { count => n, name => "emailassigned_to",
- label=> "the ${terms.Bug} ${field_descs.assigned_to}" } %]
- [% PROCESS role_types field = { count => n, name => "emailreporter",
- label=> "the ${field_descs.reporter}" } %]
- [% IF Param('useqacontact') %]
- [% PROCESS role_types field = { count => n, name => "emailqa_contact",
- label=> "the ${field_descs.qa_contact}" } %]
- [% END %]
- [% PROCESS role_types field = { count => n, name => "emailcc",
- label=> "a ${field_descs.cc} list member" } %]
- [% PROCESS role_types field = { count => n, name => "emaillongdesc",
- label=> " a ${field_descs.commenter}" } %]
- <select name="emailtype[% n %]">
- [% FOREACH qv = [
- { name => "substring", description => "contains" },
- { name => "exact", description => "is" },
- { name => "notequals", description => "is not" },
- { name => "regexp", description => "matches regexp" },
- { name => "notregexp", description => "doesn't match regexp" } ] %]
- <option value="[% qv.name %]"
- [% " selected" IF default.emailtype.$n == qv.name %]>[% qv.description %]</option>
- [% END %]
- </select>
- [% IF feature_enabled('jsonrpc') %]
- <div id="email[% n %]_autocomplete">
- [% END %]
- <input name="email[% n %]" class="email" id="email[% n %]"
- value="[% default.email.$n FILTER html %]">
- [% IF feature_enabled('jsonrpc') %]
- <div id="email[% n %]_autocomplete_container"></div>
- </div>
- <script type="text/javascript">
- YAHOO.bugzilla.userAutocomplete.init( "email[% n %]",
- "email[% n %]_autocomplete_container");
- </script>
- [% END %]
- </div>
- [% END %]
- [% Hook.process('email_numbering_end') %]
- </div>
-[%# *** Bug Changes *** %]
-<div class="bz_section_title" id="history_filter">
- <div id="history_query_controller" class="arrow">&#9660;</div>
- <a href="javascript:TUI_toggle_class('history_query')" >Search By Change History</a>
- <span>Narrow results to how fields have changed during a specific time period</span>
-</div>
-<ul class="bug_changes bz_search_section history_query" id="history_filter_section" >
- <li>
- <label for="chfield">where ANY of the fields:</label>
- [%# Create array, so we can sort it by description #%]
- [% chfields = [] %]
- [% FOREACH field = chfield %]
- [% chfields.push({value => field, desc => (field_descs.$field || field) }) %]
- [% END %]
- <select name="chfield" id="chfield" multiple="multiple" size="4">
- [% FOREACH field = chfields.sort('desc') %]
- <option value="[% field.value FILTER html %]"
- [% " selected" IF default.chfield.contains(field.value) %]>
- [% field.desc FILTER html %]</option>
- [% END %]
- </select>
- </li>
- <li>
- <label for="chfieldvalue">[% search_descs.changedto FILTER html %]:</label>
- <input name="chfieldvalue" id="chfieldvalue"
- size="20" value="[% default.chfieldvalue.0 FILTER html %]">
- </li>
- <li>
- <label for="chfieldfrom">between:</label>
- <input name="chfieldfrom" id="chfieldfrom" size="10"
- value="[% default.chfieldfrom.0 FILTER html %]" onchange="updateCalendarFromField(this)">
- <button type="button" class="calendar_button"
- id="button_calendar_chfieldfrom"
- onclick="showCalendar('chfieldfrom')"><span>Calendar</span></button>
- and
- <div id="con_calendar_chfieldfrom"></div>
- <input name="chfieldto" size="10" id="chfieldto"
- value="[% default.chfieldto.0 FILTER html %]" onchange="updateCalendarFromField(this)">
- <button type="button" class="calendar_button"
- id="button_calendar_chfieldto"
- onclick="showCalendar('chfieldto')"><span>Calendar</span></button>
- <div id="con_calendar_chfieldto"></div>
- (YYYY-MM-DD or relative dates)
- <script type="text/javascript">
- createCalendar('chfieldfrom');
- createCalendar('chfieldto');
- </script>
- </li>
-</ul>
-
-[%############################################################################%]
-[%# Block for email role type use to select which email to search through #%]
-[%############################################################################%]
-[% BLOCK role_types %]
- <div class="role_type">
- <input type="checkbox" name="[% field.name _ field.count FILTER html %]"
- id="[% field.name _ field.count FILTER html %]" value="1"
- [% " checked" IF default.${field.name}.${field.count} %]>
- <label for="[% field.name _ field.count FILTER html%]">
- [% field.label FILTER html%]
- </label>
- </div>
-[% END %]