projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
handle domestic_prefix of 0, RT#11390
[freeside.git]
/
FS
/
FS
/
part_event_condition.pm
diff --git
a/FS/FS/part_event_condition.pm
b/FS/FS/part_event_condition.pm
index
1efd0f8
..
32f19a3
100644
(file)
--- a/
FS/FS/part_event_condition.pm
+++ b/
FS/FS/part_event_condition.pm
@@
-1,8
+1,8
@@
package FS::part_event_condition;
use strict;
package FS::part_event_condition;
use strict;
-use vars qw( @ISA $DEBUG );
-use FS::UID qw(
dbh
);
+use vars qw( @ISA $DEBUG
@SKIP_CONDITION_SQL
);
+use FS::UID qw(
dbh driver_name
);
use FS::Record qw( qsearch qsearchs );
use FS::option_Common;
use FS::part_event; #for order_conditions_sql...
use FS::Record qw( qsearch qsearchs );
use FS::option_Common;
use FS::part_event; #for order_conditions_sql...
@@
-10,6
+10,8
@@
use FS::part_event; #for order_conditions_sql...
@ISA = qw( FS::option_Common ); # FS::Record );
$DEBUG = 0;
@ISA = qw( FS::option_Common ); # FS::Record );
$DEBUG = 0;
+@SKIP_CONDITION_SQL = ();
+
=head1 NAME
FS::part_event_condition - Object methods for part_event_condition records
=head1 NAME
FS::part_event_condition - Object methods for part_event_condition records
@@
-189,6
+191,10
@@
foreach my $INC ( @INC ) {
#warn "error using $fullmod (skipping): $@\n" if $@;
#next;
}
#warn "error using $fullmod (skipping): $@\n" if $@;
#next;
}
+ if ( $fullmod->disabled ) {
+ warn "$fullmod is disabled; skipping\n";
+ next;
+ }
#my $full_condition_sql = $fullmod. '::condition_sql';
my $condition_sql_coderef = sub { $fullmod->condition_sql(@_) };
my $order_sql_coderef = $fullmod->can('order_sql')
#my $full_condition_sql = $fullmod. '::condition_sql';
my $condition_sql_coderef = sub { $fullmod->condition_sql(@_) };
my $order_sql_coderef = $fullmod->can('order_sql')
@@
-279,11
+285,16
@@
sub where_conditions_sql {
map {
my $conditionname = $_;
my $coderef = $conditions{$conditionname}->{condition_sql};
map {
my $conditionname = $_;
my $coderef = $conditions{$conditionname}->{condition_sql};
- my $sql = &$coderef( $eventtable, 'time'=>$time );
+ my $sql = &$coderef( $eventtable, 'time' => $time,
+ 'driver_name' => driver_name(),
+ );
die "$coderef is not a CODEREF" unless ref($coderef) eq 'CODE';
"( cond_$conditionname.conditionname IS NULL OR $sql )";
}
die "$coderef is not a CODEREF" unless ref($coderef) eq 'CODE';
"( cond_$conditionname.conditionname IS NULL OR $sql )";
}
- keys %conditions
+ grep { my $cond = $_;
+ ! grep { $_ eq $cond } @SKIP_CONDITION_SQL
+ }
+ keys %conditions
);
$where;
);
$where;