[Jifty-commit] r5640 - in Jifty-DBI/trunk: lib/Jifty/DBI

Jifty commits jifty-commit at lists.jifty.org
Fri Aug 1 14:13:12 EDT 2008


Author: trs
Date: Fri Aug  1 14:13:09 2008
New Revision: 5640

Modified:
   Jifty-DBI/trunk/   (props changed)
   Jifty-DBI/trunk/lib/Jifty/DBI/Record.pm

Log:
 r38418 at zot:  tom | 2008-08-01 14:12:38 -0400
 Allow validators to get extra arguments


Modified: Jifty-DBI/trunk/lib/Jifty/DBI/Record.pm
==============================================================================
--- Jifty-DBI/trunk/lib/Jifty/DBI/Record.pm	(original)
+++ Jifty-DBI/trunk/lib/Jifty/DBI/Record.pm	Fri Aug  1 14:13:09 2008
@@ -1663,7 +1663,7 @@
     }
 }
 
-=head2 run_validation_for_column column => 'COLUMN', value => 'VALUE'
+=head2 run_validation_for_column column => 'COLUMN', value => 'VALUE' [extra => \@ARGS]
 
 Runs all validators for the specified column.
 
@@ -1674,13 +1674,14 @@
     my %args = (
         column => undef,
         value  => undef,
+        extra  => [],
         @_
     );
     my $key  = $args{'column'};
     my $attr = $args{'value'};
 
     my ( $ret, $results )
-        = $self->_run_callback( name => "validate_" . $key, args => $attr );
+        = $self->_run_callback( name => "validate_" . $key, args => $attr, extra => $args{'extra'} );
 
     if ( defined $ret ) {
         return ( 1, 'Validation ok' );
@@ -1715,6 +1716,7 @@
         name => undef,
         args => undef,
         short_circuit => 1,
+        extra => [],
         @_
     );
 
@@ -1722,11 +1724,11 @@
     my $method = $args{'name'};
     my @results;
     if ( my $func = $self->can($method) ) {
-        @results = $func->( $self, $args{args} );
+        @results = $func->( $self, $args{args}, @{$args{'extra'}} );
         return ( wantarray ? ( undef, [ [@results] ] ) : undef )
             if $args{short_circuit} and not $results[0];
     }
-    $ret = $self->call_trigger( $args{'name'} => $args{args} );
+    $ret = $self->call_trigger( $args{'name'} => $args{args}, @{$args{'extra'}} );
     return (
         wantarray
         ? ( $ret, [ [@results], @{ $self->last_trigger_results } ] )


More information about the Jifty-commit mailing list