From: Ivan Kohler Date: Wed, 13 Feb 2019 18:02:47 +0000 (-0800) Subject: restore fallback to customer billing address for CC transactions, RT#77641, RT#71513 X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=92e8ec0e2092fef7bfb126f8d87acac83bbca8eb restore fallback to customer billing address for CC transactions, RT#77641, RT#71513 --- diff --git a/FS/FS/cust_main/Billing_Realtime.pm b/FS/FS/cust_main/Billing_Realtime.pm index b29408b0e..4ff2c0602 100644 --- a/FS/FS/cust_main/Billing_Realtime.pm +++ b/FS/FS/cust_main/Billing_Realtime.pm @@ -361,14 +361,23 @@ sub _bop_content { $content{name} = $payname if $payname; - $content{address} = $options->{'address1'}; - my $address2 = $options->{'address2'}; - $content{address} .= ", ". $address2 if length($address2); - - $content{city} = $options->{'city'}; - $content{state} = $options->{'state'}; - $content{zip} = $options->{'zip'}; - $content{country} = $options->{'country'}; + if ( exists($options->{'address1'}) ) { + + $content{address} = $options->{'address1'}; + my $address2 = $options->{'address2'}; + $content{address} .= ", ". $address2 if length($address2); + + $content{$_} = $options->{$_} foreach qw( city state zip country ); + + } elsif ( ref($self) ) { + + $content{address} = $self->address1; + my $address2 = $self->address2; + $content{address} .= ", ". $address2 if length($address2); + + $content{$_} = $self->$_() foreach qw( city state zip country ); + + } # can't set phone if called as class method $content{phone} = $self->daytime || $self->night