]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 524034: New hook: bug-end_of_create_validators
authormkanat%bugzilla.org <>
Wed, 18 Nov 2009 07:15:23 +0000 (07:15 +0000)
committermkanat%bugzilla.org <>
Wed, 18 Nov 2009 07:15:23 +0000 (07:15 +0000)
Patch by Max Kanat-Alexander <mkanat@bugzilla.org> r=dkl, a=mkanat

Bugzilla/Bug.pm
Bugzilla/Hook.pm
extensions/example/code/bug-end_of_create_validators.pl [new file with mode: 0644]

index 9af8b1e8c3e7dcec38bbba428c7d1c70954d4fc8..c27f23823439124d4dd5b3642aa7ef724755df46 100644 (file)
@@ -613,6 +613,9 @@ sub run_create_validators {
     delete $params->{lastdiffed};
     delete $params->{bug_id};
 
+    Bugzilla::Hook::process('bug-end_of_create_validators',
+                            { params => $params });
+
     return $params;
 }
 
index b1feea1383933da9577c3a27f2012cf668f8b302..b98fc95d7534ff0f5d3aa8203816e6faa06b34b7 100644 (file)
@@ -280,6 +280,21 @@ values.
 
 =back
 
+=head2 bug-end_of_create_validators
+
+This happens during L<Bugzilla::Bug/create>, after all parameters have
+been validated, but before anything has been inserted into the database.
+
+Params:
+
+=over
+
+=item C<params>
+
+A hashref. The validated parameters passed to C<create>.
+
+=back
+
 =head2 bug-end_of_update
 
 This happens at the end of L<Bugzilla::Bug/update>, after all other changes are
diff --git a/extensions/example/code/bug-end_of_create_validators.pl b/extensions/example/code/bug-end_of_create_validators.pl
new file mode 100644 (file)
index 0000000..95d64ae
--- /dev/null
@@ -0,0 +1,37 @@
+# -*- 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 ITA Software
+# Portions created by the Initial Developer are Copyright (C) 2009 
+# the Initial Developer. All Rights Reserved.
+#
+# Contributor(s): 
+#   Max Kanat-Alexander <mkanat@bugzilla.org>
+
+use strict;
+use warnings;
+use Bugzilla;
+use Data::Dumper;
+
+# This code doesn't actually *do* anything, it's just here to show you
+# how to use this hook.
+my $params = Bugzilla->hook_args->{'params'};
+
+# Uncomment this line below to see a line in your webserver's error log
+# containing all validated bug field values every time you file a bug.
+# warn Dumper($params);
+
+# This would remove all ccs from the bug, preventing ANY ccs from being
+# added on bug creation.
+# $params->{cc} = [];