projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix problems using inventory for UID (and other fields controlled by check in svc_acc...
[freeside.git]
/
FS
/
FS
/
payby.pm
diff --git
a/FS/FS/payby.pm
b/FS/FS/payby.pm
index
6684c95
..
30a03dd
100644
(file)
--- a/
FS/FS/payby.pm
+++ b/
FS/FS/payby.pm
@@
-48,32
+48,38
@@
tie %hash, 'Tie::IxHash',
tinyname => 'card',
shortname => 'Credit card',
longname => 'Credit card (automatic)',
tinyname => 'card',
shortname => 'Credit card',
longname => 'Credit card (automatic)',
+ realtime => 1,
},
'DCRD' => {
tinyname => 'card',
shortname => 'Credit card',
longname => 'Credit card (on-demand)',
cust_pay => 'CARD', #this is a customer type only, payments are CARD...
},
'DCRD' => {
tinyname => 'card',
shortname => 'Credit card',
longname => 'Credit card (on-demand)',
cust_pay => 'CARD', #this is a customer type only, payments are CARD...
+ realtime => 1,
},
'CHEK' => {
tinyname => 'check',
shortname => 'Electronic check',
longname => 'Electronic check (automatic)',
},
'CHEK' => {
tinyname => 'check',
shortname => 'Electronic check',
longname => 'Electronic check (automatic)',
+ realtime => 1,
},
'DCHK' => {
tinyname => 'check',
shortname => 'Electronic check',
longname => 'Electronic check (on-demand)',
cust_pay => 'CHEK', #this is a customer type only, payments are CHEK...
},
'DCHK' => {
tinyname => 'check',
shortname => 'Electronic check',
longname => 'Electronic check (on-demand)',
cust_pay => 'CHEK', #this is a customer type only, payments are CHEK...
+ realtime => 1,
},
'LECB' => {
tinyname => 'phone bill',
shortname => 'Phone bill billing',
longname => 'Phone bill billing',
},
'LECB' => {
tinyname => 'phone bill',
shortname => 'Phone bill billing',
longname => 'Phone bill billing',
+ realtime => 1,
},
'BILL' => {
tinyname => 'billing',
shortname => 'Billing',
},
'BILL' => {
tinyname => 'billing',
shortname => 'Billing',
+ payname => 'Check',
longname => 'Billing',
},
'PREP' => {
longname => 'Billing',
},
'PREP' => {
@@
-124,12
+130,21
@@
sub can_payby {
#return "Illegal payby" unless $hash{$payby};
return 0 unless $hash{$payby};
#return "Illegal payby" unless $hash{$payby};
return 0 unless $hash{$payby};
- $table = 'cust_pay' if $table
eq 'cust_pay_batch' || $table eq 'cust_refund'
;
+ $table = 'cust_pay' if $table
=~ /^cust_(pay_pending|pay_batch|pay_void|refund)$/
;
return 0 if exists( $hash{$payby}->{$table} );
return 1;
}
return 0 if exists( $hash{$payby}->{$table} );
return 1;
}
+sub realtime { # can use realtime payment facilities
+ my( $self, $payby ) = @_;
+
+ return 0 unless $hash{$payby};
+ return 0 unless exists( $hash{$payby}->{realtime} );
+
+ return $hash{$payby}->{realtime};
+}
+
sub payby2longname {
my $self = shift;
map { $_ => $hash{$_}->{longname} } $self->payby;
sub payby2longname {
my $self = shift;
map { $_ => $hash{$_}->{longname} } $self->payby;
@@
-140,6
+155,14
@@
sub shortname {
$hash{$payby}->{shortname};
}
$hash{$payby}->{shortname};
}
+sub payname {
+ my( $self, $payby ) = @_;
+ #$hash{$payby}->{payname} || $hash{$payby}->{shortname};
+ exists($hash{$payby}->{payname})
+ ? $hash{$payby}->{payname}
+ : $hash{$payby}->{shortname};
+}
+
sub longname {
my( $self, $payby ) = @_;
$hash{$payby}->{longname};
sub longname {
my( $self, $payby ) = @_;
$hash{$payby}->{longname};
@@
-148,6
+171,7
@@
sub longname {
%payby2bop = (
'CARD' => 'CC',
'CHEK' => 'ECHECK',
%payby2bop = (
'CARD' => 'CC',
'CHEK' => 'ECHECK',
+ 'MCRD' => 'CC',
);
sub payby2bop {
);
sub payby2bop {