]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 437005: Add hook to colchange.cgi to add column(s) to buglist
authormkanat%bugzilla.org <>
Wed, 20 Aug 2008 02:29:50 +0000 (02:29 +0000)
committermkanat%bugzilla.org <>
Wed, 20 Aug 2008 02:29:50 +0000 (02:29 +0000)
Patch By Elliotte Martin <elliotte_martin@yahoo.com> r=mkanat, a=mkanat

Bugzilla/Hook.pm
colchange.cgi
extensions/example/code/colchange-columns.pl [new file with mode: 0644]

index 1b4a5ad32c11812664274d6e35f287c195b84fdd..3be0d166f83393f36798c229fc6ecbac89a868c9 100644 (file)
@@ -311,3 +311,19 @@ A hash that maps the names of errors (like C<invalid_param>) to numbers.
 See L<Bugzilla::WebService::Constants/WS_ERROR_CODE> for an example.
 
 =back
+
+=head2 colchange-columns
+
+This happens in F<colchange.cgi> right after the list of possible display
+columns have been defined and gives you the opportunity to add additional
+display columns to the list of selectable columns.
+
+Params:
+
+=over
+
+=item C<columns> - An arrayref containing an array of column IDs.  Any IDs
+added by this hook must have been defined in the the buglist-columns hook.
+See L</buglist-columns>.
+
+=back
index b2d33de7efbf583bf4249fb91327371e2496a9e3..3dbd93dca069633e0ae93f28bd472e1c2ee06475 100755 (executable)
@@ -84,6 +84,8 @@ my @custom_fields = grep { $_->type != FIELD_TYPE_MULTI_SELECT }
                          Bugzilla->active_custom_fields;
 push(@masterlist, map { $_->name } @custom_fields);
 
+Bugzilla::Hook::process("colchange-columns", {'columns' => \@masterlist} );
+
 $vars->{'masterlist'} = \@masterlist;
 
 my @collist;
diff --git a/extensions/example/code/colchange-columns.pl b/extensions/example/code/colchange-columns.pl
new file mode 100644 (file)
index 0000000..6174d39
--- /dev/null
@@ -0,0 +1,27 @@
+# -*- Mode: perl; indent-tabs-mode: nil -*-
+#
+# 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 Example Plugin.
+#
+# The Initial Developer of the Original Code is Canonical Ltd.
+# Portions created by Canonical Ltd. are Copyright (C) 2008 
+# Canonical Ltd. All Rights Reserved.
+#
+# Contributor(s): Elliotte Martin <elliotte_martin@yahoo.com>
+
+
+use strict;
+use warnings;
+use Bugzilla;
+
+my $columns = Bugzilla->hook_args->{'columns'};
+push (@$columns, "example")