49175d848e0591ce2e814db4f10fcd9587f014cd
[freeside.git] / httemplate / edit / process / quick-charge.cgi
1 <%
2
3 #untaint custnum
4 $cgi->param('custnum') =~ /^(\d+)$/
5   or die 'illegal custnum '. $cgi->param('custnum');
6 my $custnum = $1;
7
8 $cgi->param('amount') =~ /^\s*(\d+(\.\d{1,2})?)\s*$/
9   or die 'illegal amount '. $cgi->param('amount');
10 my $amount = $1;
11
12 my $cust_main = qsearchs('cust_main', { 'custnum' => $custnum } )
13   or die "unknown custnum $custnum";
14
15 my $error = $cust_main->charge( $amount, $cgi->param('pkg') );
16
17 if ($error) {
18 %>
19 <!-- mason kludge -->
20 <%
21   eidiot($error);
22 } else {
23   print $cgi->redirect(popurl(3). "view/cust_main.cgi?$custnum" );
24 }
25
26 %>
27