summaryrefslogtreecommitdiff
path: root/FS
diff options
context:
space:
mode:
authorivan <ivan>2002-04-19 01:16:39 +0000
committerivan <ivan>2002-04-19 01:16:39 +0000
commit98a73bb080f55f4f5d850102bcec6da2807e3d4f (patch)
tree960bf3f9117760ee030020a9104b836f69910d43 /FS
parent6866bdda26d1feb152af991388113e2e9309fafb (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.pm20
-rw-r--r--FS/FS/cust_main.pm4
-rw-r--r--FS/FS/part_pkg.pm24
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