diff options
author | Ivan Kohler <ivan@freeside.biz> | 2016-06-03 17:22:33 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2016-06-03 17:22:33 -0700 |
commit | a074e417df3aef3bbcb9e397ef30794ba9f0d5c0 (patch) | |
tree | 3a0418d6b7598cc3ac1279c947a8c81e0bad21d5 | |
parent | 24d75c7bb38b8729a40f1468f64d5cf76fb6fef7 (diff) |
fix "Customer has automatic payment information" condition when migrated from v3
-rw-r--r-- | FS/FS/part_event/Condition/has_cust_payby_auto.pm | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/FS/FS/part_event/Condition/has_cust_payby_auto.pm b/FS/FS/part_event/Condition/has_cust_payby_auto.pm index 9f914292f..42f6d3582 100644 --- a/FS/FS/part_event/Condition/has_cust_payby_auto.pm +++ b/FS/FS/part_event/Condition/has_cust_payby_auto.pm @@ -30,11 +30,24 @@ sub condition { my $cust_main = $self->cust_main($object); + #handle multiple (HASH) type options migrated from a v3 payby.pm condition + # (and maybe we should be a select-multiple or checkbox-multiple too?) + my @payby = (); + my $payby = $self->option('payby'); + if ( ref($payby) ) { + @payby = keys %$payby; + } elsif ( $payby ) { + @payby = ( $payby ); + } + scalar( qsearch({ 'table' => 'cust_payby', 'hashref' => { 'custnum' => $cust_main->custnum, - 'payby' => $self->option('payby') + #'payby' => $self->option('payby') }, + 'extra_sql' => 'AND payby IN ( '. + join(',', map dbh->quote($_), @payby). + ' ) ', 'order_by' => 'LIMIT 1', }) ); |