Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
bugzilla
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
etersoft
bugzilla
Commits
6af8aec0
Commit
6af8aec0
authored
Nov 18, 2009
by
mkanat%bugzilla.org
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bug 524007: New Hook: object-end_of_create_validators
Patch by Max Kanat-Alexander <mkanat@bugzilla.org> r=dkl, a=mkanat
parent
b29c8663
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
62 additions
and
0 deletions
+62
-0
Hook.pm
Bugzilla/Hook.pm
+25
-0
Object.pm
Bugzilla/Object.pm
+3
-0
object-end_of_create_validators.pl
extensions/example/code/object-end_of_create_validators.pl
+34
-0
No files found.
Bugzilla/Hook.pm
View file @
6af8aec0
...
...
@@ -605,6 +605,31 @@ A hashref. The set of named parameters passed to C<create>.
=back
=head2 object-end_of_create_validators
Called at the end of L<Bugzilla::Object/run_create_validators>. You can
use this to run additional validation when creating an object.
If a subclass has overridden C<run_create_validators>, then this usually
happens I<before> the subclass does its custom validation.
Params:
=over
=item C<class>
The name of the class that C<create> was called on. You can check this
like C<< if ($class->isa('Some::Class')) >> in your code, to perform specific
tasks for only certain classes.
=item C<params>
A hashref. The set of named parameters passed to C<create>, modified and
validated by the C<VALIDATORS> specified for the object.
=back
=head2 page-before_template
This is a simple way to add your own pages to Bugzilla. This hooks C<page.cgi>,
...
...
Bugzilla/Object.pm
View file @
6af8aec0
...
...
@@ -435,6 +435,9 @@ sub run_create_validators {
$field_values
{
$field
}
=
$value
;
}
Bugzilla::Hook::
process
(
'object-end_of_create_validators'
,
{
class
=>
$class
,
params
=>
\%
field_values
});
return
\%
field_values
;
}
...
...
extensions/example/code/object-end_of_create_validators.pl
0 → 100644
View file @
6af8aec0
# -*- 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
;
my
$args
=
Bugzilla
->
hook_args
;
my
$class
=
$args
->
{
'class'
};
my
$params
=
$args
->
{
'params'
};
# Note that this is a made-up class, for this example.
if
(
$class
->
isa
(
'Bugzilla::ExampleObject'
))
{
# Always set example_field to 1, even if the validators said otherwise.
$params
->
{
example_field
}
=
1
;
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment