From: terry%mozilla.org <> Date: Fri, 14 Jan 2000 04:25:08 +0000 (+0000) Subject: Allow displaying of a "keywords" column. X-Git-Tag: bugzilla-2.12~477 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=000687a8129f2d52fae8baf2e535db97eebd4c54;p=thirdparty%2Fbugzilla.git Allow displaying of a "keywords" column. --- diff --git a/buglist.cgi b/buglist.cgi index 07ca5071ce..86a0a2ae28 100755 --- a/buglist.cgi +++ b/buglist.cgi @@ -27,16 +27,19 @@ use strict; require "CGI.pl"; use Date::Parse; -use vars @::legal_platform, - @::versions, - @::legal_product, - %::MFORM, +use vars %::MFORM, @::components, - @::legal_severity, - @::legal_priority, + @::db, @::default_column_list, + @::keywordsbyname, + @::legal_keywords, + @::legal_platform, + @::legal_priority, + @::legal_product, @::legal_resolution_no_dup, - @::legal_target_milestone; + @::legal_severity, + @::legal_target_milestone, + @::versions; @@ -185,7 +188,6 @@ if (defined $::COOKIE{'COLUMNLIST'}) { } my $minvotes; -my $votecolnum; if (defined $::FORM{'votes'}) { my $c = trim($::FORM{'votes'}); if ($c ne "") { @@ -199,7 +201,6 @@ if (defined $::FORM{'votes'}) { if (! (grep {/^votes$/} @collist)) { push(@collist, 'votes'); } - $votecolnum = lsearch(\@collist, 'votes'); } } @@ -561,6 +562,8 @@ foreach my $c (@collist) { } else { $tablestart .= $::title{$c}; } + } elsif ($c eq "keywords") { + $tablestart .= "Keywords"; } } @@ -600,19 +603,31 @@ while (@row = FetchSQLData()) { pnl ""; pnl "$bug_id "; foreach my $c (@collist) { - if (!exists $::needquote{$c}) { - next; - } - my $value = shift @row; - if (!defined $value) { - next; - } - if ($::needquote{$c}) { - $value = html_quote($value); - } else { - $value = "$value"; + if (exists $::needquote{$c}) { + my $value = shift @row; + if (!defined $value) { + next; + } + if ($::needquote{$c}) { + $value = html_quote($value); + } else { + $value = "$value"; + } + pnl "$value"; + } elsif ($c eq "keywords") { + my $query = + $::db->query("SELECT keyworddefs.name + FROM keyworddefs, keywords + WHERE keywords.bug_id = $bug_id + AND keyworddefs.id = keywords.keywordid + ORDER BY keyworddefs.name"); + my @list; + my @row; + while (@row= $query->fetchrow()) { + push(@list, $row[0]); + } + pnl("" . join(", ", @list) . ""); } - pnl "$value"; } if ($dotweak) { my $value = shift @row; diff --git a/colchange.cgi b/colchange.cgi index 077b0bc29a..d3a42fc696 100755 --- a/colchange.cgi +++ b/colchange.cgi @@ -30,6 +30,9 @@ print "Content-type: text/html\n"; # The master list not only says what fields are possible, but what order # they get displayed in. +ConnectToDatabase(); +GetVersionTable(); + my @masterlist = ("opendate", "changeddate", "severity", "priority", "platform", "owner", "reporter", "status", "resolution", "component", "product", "version", "project", "os", "votes"); @@ -43,6 +46,9 @@ if (Param("useqacontact")) { if (Param("usestatuswhiteboard")) { push(@masterlist, "status_whiteboard"); } +if (@::legal_keywords) { + push(@masterlist, "keywords"); +} push(@masterlist, ("summary", "summaryfull"));