X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fmisc%2Fpayment.cgi;h=1ae15b930143da6e79829cdba299e67beddbb7c7;hp=f99f2f068b979eaea3ba2ae5fbb38dcc9df2c6c6;hb=26004f55ce70242d07fc8de51e24439e783e9e49;hpb=f49f11d4c3c4ba9480cc5c9acfaa606a5ba73ad1 diff --git a/httemplate/misc/payment.cgi b/httemplate/misc/payment.cgi index f99f2f068..1ae15b930 100644 --- a/httemplate/misc/payment.cgi +++ b/httemplate/misc/payment.cgi @@ -1,220 +1,236 @@ -<% include( '/elements/header.html', "Process $type{$payby} payment" ) %> -<% include( '/elements/small_custview.html', $cust_main, '', '', popurl(2) . "view/cust_main.cgi" ) %> +<& /elements/header.html, mt("Process [_1] payment",$type{$payby}) &> +<& /elements/small_custview.html, $cust_main, '', '', popurl(2) . "view/cust_main.cgi" &>
-<% include('/elements/footer.html') %> +<& /elements/footer.html &> <%init> die "access denied" @@ -239,16 +255,33 @@ my $balance = $cust_main->balance; my $payinfo = ''; -#false laziness w/selfservice make_payment.html shortcut for one-country 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; -my $payunique = "webui-payment-". time. "-$$-". rand() * 2**32; +my $amount = ''; +if ( $balance > 0 ) { + $amount = $balance; +} -%init> +my $post_fee_callback = sub { + my( $amountref ) = @_; + + return unless $$amountref > 0; + my $conf = new FS::Conf; + my $cc_surcharge_pct = $conf->config('credit-card-surcharge-percentage'); + $$amountref += $$amountref * $cc_surcharge_pct/100 if $cc_surcharge_pct > 0; + + $$amountref = sprintf("%.2f", $$amountref); +}; + +my $payunique = "webui-payment-". time. "-$$-". rand() * 2**32; + +%init>