diff options
author | ivan <ivan> | 2002-04-19 01:16:39 +0000 |
---|---|---|
committer | ivan <ivan> | 2002-04-19 01:16:39 +0000 |
commit | 98a73bb080f55f4f5d850102bcec6da2807e3d4f (patch) | |
tree | 960bf3f9117760ee030020a9104b836f69910d43 /FS | |
parent | 6866bdda26d1feb152af991388113e2e9309fafb (diff) |
- add init file installation to Makefile, add unified init file
- fix qsearch for op => '!=', value => '' searches
- fix invalid_catd typo
- add payby method to part_pkg and have fs_signup_server pass the data
Diffstat (limited to 'FS')
-rw-r--r-- | FS/FS/Record.pm | 20 | ||||
-rw-r--r-- | FS/FS/cust_main.pm | 4 | ||||
-rw-r--r-- | FS/FS/part_pkg.pm | 24 |
3 files changed, 42 insertions, 6 deletions
diff --git a/FS/FS/Record.pm b/FS/FS/Record.pm index ed87b0c19..ac8117e70 100644 --- a/FS/FS/Record.pm +++ b/FS/FS/Record.pm @@ -224,10 +224,24 @@ sub qsearch { } if ( ! defined( $record->{$_} ) || $record->{$_} eq '' ) { - if ( driver_name =~ /^Pg$/i ) { - qq-( $_ IS NULL OR $_ = '' )-; + if ( $op eq '=' ) { + if ( driver_name =~ /^Pg$/i ) { + qq-( $_ IS NULL OR $_ = '' )-; + } else { + qq-( $_ IS NULL OR $_ = "" )-; + } + } elsif ( $op eq '!=' ) { + if ( driver_name =~ /^Pg$/i ) { + qq-( $_ IS NOT NULL AND $_ != '' )-; + } else { + qq-( $_ IS NOT NULL AND $_ != "" )-; + } } else { - qq-( $_ IS NULL OR $_ = "" )-; + if ( driver_name =~ /^Pg$/i ) { + qq-( $_ $op '' )-; + } else { + qq-( $_ $op "" )-; + } } } else { "$_ $op ?"; diff --git a/FS/FS/cust_main.pm b/FS/FS/cust_main.pm index 66e032b0e..445c6951a 100644 --- a/FS/FS/cust_main.pm +++ b/FS/FS/cust_main.pm @@ -644,11 +644,11 @@ sub check { my $payinfo = $self->payinfo; $payinfo =~ s/\D//g; $payinfo =~ /^(\d{13,16})$/ - or return gettext('invalid_catd'); # . ": ". $self->payinfo; + or return gettext('invalid_card'); # . ": ". $self->payinfo; $payinfo = $1; $self->payinfo($payinfo); validate($payinfo) - or return gettext('invalid_catd'); # . ": ". $self->payinfo; + or return gettext('invalid_card'); # . ": ". $self->payinfo; return gettext('unknown_card_type') if cardtype($self->payinfo) eq "Unknown"; diff --git a/FS/FS/part_pkg.pm b/FS/FS/part_pkg.pm index 00ce1d944..e8cc67713 100644 --- a/FS/FS/part_pkg.pm +++ b/FS/FS/part_pkg.pm @@ -262,11 +262,33 @@ sub svcpart { $pkg_svc[0]->svcpart; } +=item payby + +Returns a list of the acceptable payment types for this package. Eventually +this should come out of a database table and be editable, but currently has the +following logic instead; + +If the package has B<0> setup and B<0> recur, the single item B<BILL> is +returned, otherwise, the single item B<CARD> is returned. + +=cut + +sub payby { + my $self = shift; + #if ( $self->setup == 0 && $self->recur == 0 ) { + if ( $self->setup =~ /^\s*0+(\.0*)?\s*$/ + && $self->recur =~ /^\s*0+(\.0*)?\s*$/ ) { + ( 'BILL' ); + } else { + ( 'CARD' ); + } +} + =back =head1 VERSION -$Id: part_pkg.pm,v 1.9 2002-03-24 17:42:58 ivan Exp $ +$Id: part_pkg.pm,v 1.10 2002-04-19 01:16:39 ivan Exp $ =head1 BUGS |