summaryrefslogtreecommitdiffstats
path: root/query.cgi
diff options
context:
space:
mode:
authorterry%mozilla.org <>2000-01-07 06:16:13 +0100
committerterry%mozilla.org <>2000-01-07 06:16:13 +0100
commit397beebc19dfac0417a64fdbcfb4e6657f6ad9f5 (patch)
treeddd220c777c77fffcce232bffb0ae3b8b80ca014 /query.cgi
parent845f202912dadeb9f18837bb19f117f8c092bacc (diff)
downloadbugzilla-397beebc19dfac0417a64fdbcfb4e6657f6ad9f5.tar.gz
bugzilla-397beebc19dfac0417a64fdbcfb4e6657f6ad9f5.tar.xz
Add support for a new "keywords" feature. This lets some central
authority maintain a list of keywords, and users can associate any keyword with any bug. The new functionality won't appear until at least one keyword is defined. Note that you *must* run the "checksetup.pl" script after updating this change, in order to create the new required tables "keywords" and "keyworddefs".
Diffstat (limited to 'query.cgi')
-rwxr-xr-xquery.cgi43
1 files changed, 34 insertions, 9 deletions
diff --git a/query.cgi b/query.cgi
index 5cb40f147..a0ae1f0b3 100755
--- a/query.cgi
+++ b/query.cgi
@@ -77,7 +77,7 @@ foreach my $name ("bug_status", "resolution", "assigned_to", "rep_platform",
"changedin", "votes", "short_desc", "short_desc_type",
"long_desc", "long_desc_type", "bug_file_loc",
"bug_file_loc_type", "status_whiteboard",
- "status_whiteboard_type") {
+ "status_whiteboard_type", "keywords") {
$default{$name} = "";
$type{$name} = 0;
}
@@ -367,17 +367,20 @@ print $jscript;
my @logfields = ("[Bug creation]", @::log_columns);
-print "
-<FORM METHOD=GET ACTION=\"buglist.cgi\">
+print qq{
+<FORM METHOD=GET ACTION="buglist.cgi">
<table>
<tr>
-<th align=left><A HREF=\"bug_status.html\">Status</a>:</th>
-<th align=left><A HREF=\"bug_status.html\">Resolution</a>:</th>
-<th align=left><A HREF=\"bug_status.html#rep_platform\">Platform</a>:</th>
-<th align=left><A HREF=\"bug_status.html#op_sys\">OpSys</a>:</th>
-<th align=left><A HREF=\"bug_status.html#priority\">Priority</a>:</th>
-<th align=left><A HREF=\"bug_status.html#severity\">Severity</a>:</th>
+<th align=left><A HREF="bug_status.html">Status</a>:</th>
+<th align=left><A HREF="bug_status.html">Resolution</a>:</th>
+<th align=left><A HREF="bug_status.html#rep_platform">Platform</a>:</th>
+<th align=left><A HREF="bug_status.html#op_sys">OpSys</a>:</th>
+<th align=left><A HREF="bug_status.html#priority">Priority</a>:</th>
+<th align=left><A HREF="bug_status.html#severity">Severity</a>:</th>
+};
+
+print "
</tr>
<tr>
<td align=left valign=top>
@@ -538,6 +541,25 @@ if (Param("usestatuswhiteboard")) {
StringSearch("Status whiteboard", "status_whiteboard");
}
+if (@::legal_keywords) {
+ my $def = value_quote($default{'keywords'});
+ print qq{
+<TR>
+<TD ALIGN="right"><A HREF="describekeywords.cgi">Keywords</A>:</TD>
+<TD><INPUT NAME="keywords" SIZE=30 VALUE=$def></TD>
+<TD><SELECT NAME=keywords_type>
+};
+ foreach my $i (["or", "Any of the listed keywords set"]) {
+ my ($n, $d) = (@$i);
+ my $sel = "";
+ if ($default{"keywords"} eq $n) {
+ $sel = " SELECTED";
+ }
+ print qq{<OPTION VALUE="$n"$sel>$d\n};
+ }
+ print qq{</SELECT></TD></TR>};
+}
+
print "
</table>
<p>
@@ -591,6 +613,9 @@ if (UserInGroup("tweakparams")) {
if (UserInGroup("editcomponents")) {
print "<a href=editproducts.cgi>Edit Bugzilla products and components</a><br>\n";
}
+if (UserInGroup("editkeywords")) {
+ print "<a href=editkeywords.cgi>Edit Bugzilla keywords</a><br>\n";
+}
if (defined $::COOKIE{"Bugzilla_login"}) {
print "<a href=relogin.cgi>Log in as someone besides <b>$::COOKIE{'Bugzilla_login'}</b></a><br>\n";
}