X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Felements%2Fcust_payby.html;h=60e6eb8b1b594c877415b701ab0cbe2ec653327a;hb=d22baa4e71bfa9e153c1fe1152ff4c748f1d935c;hp=20ad343115d1ece4a026bffb529bf31f93a42ca3;hpb=b68c4a4a92d9b03527f109235093fcc98b98dd2a;p=freeside.git
diff --git a/httemplate/elements/cust_payby.html b/httemplate/elements/cust_payby.html
index 20ad34311..60e6eb8b1 100644
--- a/httemplate/elements/cust_payby.html
+++ b/httemplate/elements/cust_payby.html
@@ -11,7 +11,8 @@
<% mt('Account type') |h %>
|
-
-% my( $account, $aba ) = split('@',
-% ( $cgi->param($name.'_payby') || $cust_payby->payby ) =~ /^(CHEK|DCHK)$/
-% ? $cgi->param($name.'_payinfo')
-% : $cust_payby->payinfo
-% );
-% my $branch = '';
-% ($branch,$aba) = split('\.',$aba)
-% if $echeck_country eq 'CA';
+
+% my ( $account, $aba, $branch ) = ( '', '', '' );
+% if ( $cgi->param($name.'_payby') =~ /^(CHEK|DCHK)$/ ) {
+% $account = $cgi->param($name.'_payinfo1');
+% $aba = $cgi->param($name.'_payinfo2');
+% $branch = $cgi->param($name.'_payinfo3');
+% } elsif ( $cust_payby->payby =~ /^(CHEK|DCHK)$/ ) {
+% ( $account, $aba ) = split('@', $cust_payby->payinfo);
+% ( $branch, $aba ) = split('\.',$aba)
+% if $echeck_country eq 'CA';
+% }
%
% #false laziness w/view/cust_main/billing.html and misc/payment.cgi
% my $routing_label = $echeck_country eq 'US' ? 'ABA/Routing #'
@@ -213,52 +216,59 @@
% }
-% unless ( $opt{'html_only'} ) {
+% unless ( $opt{'html_only'} || $payby_changed_init ) {
+% $payby_changed_init = 1;
% }
+<%once>
+my $payby_changed_init = 0;
+%once>
<%init>
my( %opt ) = @_;
@@ -287,7 +297,7 @@ if ( $curr_value ) {
} else {
$cust_payby = new FS::cust_payby {};
}
-my $sel_payby = $cust_payby->payby;
+my $sel_payby = $cgi->param($name.'_payby') || $cust_payby->payby;
$sel_payby = 'CARD' if $sel_payby eq 'DCRD' || $sel_payby eq '';
$sel_payby = 'CHEK' if $sel_payby eq 'DCHK';