summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--template/en/default/bug/process/verify-new-product.html.tmpl8
-rw-r--r--template/en/default/global/select-menu.html.tmpl56
2 files changed, 59 insertions, 5 deletions
diff --git a/template/en/default/bug/process/verify-new-product.html.tmpl b/template/en/default/bug/process/verify-new-product.html.tmpl
index 4facc45c8..8a934f8e7 100644
--- a/template/en/default/bug/process/verify-new-product.html.tmpl
+++ b/template/en/default/bug/process/verify-new-product.html.tmpl
@@ -32,8 +32,6 @@
# the target milestone field
#%]
-[% USE mycgi = CGI %]
-
<form action="process_bug.cgi" method="post">
[% PROCESS "global/hidden-fields.html.tmpl"
@@ -59,16 +57,16 @@
<tr>
<td>
<b>Version:</b><br>
- [% mycgi.popup_menu(Name => "version" , Values => versions) %]
+ [% PROCESS "global/select-menu.html.tmpl" name="version" options=versions %]
</td>
<td>
<b>Component:</b><br>
- [% mycgi.popup_menu(Name => "component" , Values => components) %]
+ [% PROCESS "global/select-menu.html.tmpl" name="component" options=components %]
</td>
[% IF use_target_milestone %]
<td>
<b>Target Milestone:</b><br>
- [% mycgi.popup_menu(Name => "target_milestone" , Values => milestones) %]
+ [% PROCESS "global/select-menu.html.tmpl" name="target_milestone" options=milestones %]
</td>
[% END %]
</tr>
diff --git a/template/en/default/global/select-menu.html.tmpl b/template/en/default/global/select-menu.html.tmpl
new file mode 100644
index 000000000..c27f60e8b
--- /dev/null
+++ b/template/en/default/global/select-menu.html.tmpl
@@ -0,0 +1,56 @@
+<!-- 1.0@bugzilla.org -->
+[%# 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): Myk Melez <myk@mozilla.org>
+ #%]
+
+[%# INTERFACE:
+ # name: string; the name of the menu.
+ #
+ # options: array or hash; the items with which to populate the array.
+ # If a hash is passed, the hash keys become the names displayed
+ # to the user while the hash values become the value of the item.
+ #
+ # default: string; the item selected in the menu by default.
+ #
+ #%]
+
+[%# Get the scalar representation of the options reference,
+ # which looks like "ARRAY(0xA352BA3F)" or "HASH(0xA352BA3F)",
+ # so we can figure out whether it is a reference to an array
+ # or a hash.
+ #%]
+[% options_type = BLOCK %][% options %][% END %]
+
+<select name="[% name FILTER html %]">
+ [% IF options_type.search("ARRAY") %]
+ [% FOREACH value = options %]
+ <option value="[% value FILTER html %]"
+ [% " selected" IF value == default %]>
+ [% value FILTER html %]
+ </option>
+ [% END %]
+ [% ELSIF values_type.search("HASH") %]
+ [% FOREACH option = options %]
+ <option value="[% option.value FILTER html %]"
+ [% " selected" IF option.value == default %]>
+ [% option.key FILTER html %]
+ </option>
+ [% END %]
+ [% END %]
+</select>