X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Felements%2Fcust_payby_new.html;fp=httemplate%2Felements%2Fcust_payby_new.html;h=7ed0496867bffe5cd76f38ea42a619c08d7009e9;hb=360f89789c45e1fd7cb84b1442d2f0c8353066d9;hp=0000000000000000000000000000000000000000;hpb=f079061ec1005edbb9d292377bf4eb1a769fa681;p=freeside.git diff --git a/httemplate/elements/cust_payby_new.html b/httemplate/elements/cust_payby_new.html new file mode 100644 index 000000000..7ed049686 --- /dev/null +++ b/httemplate/elements/cust_payby_new.html @@ -0,0 +1,222 @@ +% my $auto = 0; +% if ( $payby eq 'CARD' ) { +% +% my( $payinfo, $paycvv, $month, $year ) = ( '', '', '', '' ); +% my $payname = $cust_main->first. ' '. $cust_main->getfield('last'); +% my $location = $cust_main->bill_location; + + + <% mt('Card number') |h %> + + + + + + + + + +
+ <% mt('Exp.') |h %> + + / + +
+ + + + <% mt('CVV2') |h %> + + (<% mt('help') |h %>) + + + + <% mt('Exact name on card') |h %> + + + + <& /elements/location.html, + 'object' => $location, + 'no_asterisks' => 1, + 'address1_label' => emt('Card billing address'), + &> + +% } elsif ( $payby eq 'CHEK' ) { +% +% my( $account, $aba, $branch, $payname, $ss, $paytype, $paystate, +% $stateid, $stateid_state ) +% = ( '', '', '', '', '', '', '', '', '' ); +% +% #false laziness w/{edit,view}/cust_main/billing.html +% my $routing_label = $conf->config('echeck-country') eq 'US' +% ? 'ABA/Routing number' +% : 'Routing number'; +% my $routing_size = $conf->config('echeck-country') eq 'CA' ? 4 : 10; +% my $routing_maxlength = $conf->config('echeck-country') eq 'CA' ? 3 : 9; + + + + + <% mt('Account number') |h %> + + <% mt('Type') |h %> + + + + <% mt($routing_label) |h %> + + + (<% mt('help') |h %>) + + +% if ( $conf->config('echeck-country') eq 'CA' ) { + + <% mt('Branch number') |h %> + + + + +% } + + <% mt('Bank name') |h %> + + + +% if ( $conf->exists('show_bankstate') ) { + + <% mt('Bank state') |h %> + <& /elements/select-state.html, + 'disable_empty' => 0, + 'empty_label' => emt('(choose)'), + 'state' => $paystate, + 'country' => $cust_main->country, + 'prefix' => 'pay', + &> + + +% } else { + +% } + +% if ( $conf->exists('show_ss') ) { + + + <% mt('Account holder') |h %>
+ <% mt('Social security or tax ID #') |h %> + + + +% } else { + +% } + +% if ( $conf->exists('show_stateid') ) { + + + <% mt('Account holder') |h %>
+ <% mt("Driver's license or state ID #") |h %> + + + <% mt('State') |h %> + <& /elements/select-state.html, + 'disable_empty' => 0, + 'empty_label' => emt('(choose)'), + 'state' => $stateid_state, + 'country' => $cust_main->country, + 'prefix' => 'stateid_', + &> + + +% } else { + + +% } + +% } #end CARD/CHEK-specific section + + + + + + <% mt('Remember this information') |h %> + + + + + + NAME="auto" VALUE="1" onClick="if (this.checked) { document.OneTrueForm.save.checked=true; }"> + <% mt("Charge future payments to this [_1] automatically",$type{$payby}) |h %> +% if ( @cust_payby ) { + <% mt('as') |h %> + +% } else { + +% } + + + +<%once> + +my %weight = ( + 1 => 'Primary', + 2 => 'Secondary', + 3 => 'Tertiary', + 4 => 'Fourth', + 5 => 'Fifth', + 6 => 'Sixth', + 7 => 'Seventh', +); + + + +<%init> + +my %opt = @_; + +my @cust_payby = @{$opt{cust_payby}}; + +my %type = ( 'CARD' => 'credit card', + 'CHEK' => 'electronic check (ACH)', + ); + +$cgi->param('payby') =~ /^(CARD|CHEK)$/ + or die "unknown payby ". $cgi->param('payby'); +my $payby = $1; + +$cgi->param('custnum') =~ /^(\d+)$/ + or die "illegal custnum ". $cgi->param('custnum'); +my $custnum = $1; + +my $cust_main = qsearchs( 'cust_main', { 'custnum'=>$custnum } ); +die "unknown custnum $custnum" unless $cust_main; + +my $balance = $cust_main->balance; + +my $payinfo = ''; + +my $conf = new FS::Conf; + +#false laziness w/selfservice make_payment.html shortcut for one-country +my %states = map { $_->state => 1 } + qsearch('cust_main_county', { + 'country' => $conf->config('countrydefault') || 'US' + } ); +my @states = sort { $a cmp $b } keys %states; + + \ No newline at end of file