X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fmisc%2Fpayment.cgi;h=7911a5dd9073ec18e6ed13cd3b65cc60b74f0272;hb=9cb0274535a95a45a8f5796c8edafefb074f57c8;hp=ec50c03f166797be96aca56a68b2fa0e8c23679e;hpb=2c757d7db4cb6a7b9655de13206fcc84fb7ce61f;p=freeside.git
diff --git a/httemplate/misc/payment.cgi b/httemplate/misc/payment.cgi
index ec50c03f1..7911a5dd9 100644
--- a/httemplate/misc/payment.cgi
+++ b/httemplate/misc/payment.cgi
@@ -1,199 +1,248 @@
-<%
- my %type = ( 'CARD' => 'credit card',
- 'CHEK' => 'electronic check (ACH)',
- );
+<& /elements/header-cust_main.html, view=>'payment_history', cust_main=>$cust_main &>
- $cgi->param('payby') =~ /^(CARD|CHEK)$/
- or die "unknown payby ". $cgi->param('payby');
- my $payby = $1;
+
<% emt("Process [_1] payment",$type{$payby}) %>
- $cgi->param('custnum') =~ /^(\d+)$/
- or die "illegal custnum ". $cgi->param('custnum');
- my $custnum = $1;
+
-<%= include('/elements/footer.html') %>
+
+
+<& /elements/footer-cust_main.html &>
+<%once>
+
+my %weight = (
+ 1 => 'Primary',
+ 2 => 'Secondary',
+ 3 => 'Tertiary',
+ 4 => 'Fourth',
+ 5 => 'Fifth',
+ 6 => 'Sixth',
+ 7 => 'Seventh',
+);
+
+%once>
+<%init>
+
+die "access denied"
+ unless $FS::CurrentUser::CurrentUser->access_right('Process payment');
+
+my %type = ( 'CARD' => 'credit card',
+ 'CHEK' => 'electronic check (ACH)',
+ );
+
+$cgi->param('payby') =~ /^(CARD|CHEK)$/
+ or die "unknown payby ". $cgi->param('payby');
+my $payby = $1;
+
+my $validate_select_fields = "#payment_option, #invoice, #custpaybynum, ";
+my $validate_input_fields = "#amount, input[name=payname], ";
+if ($payby eq "CHEK") {
+ $validate_input_fields .= "input[name=payinfo1], input[name=payinfo2]";
+ $validate_select_fields .= "select[name=paytype] ";
+}
+elsif ($payby eq "CARD") {
+ $validate_input_fields .= "input[name=payinfo], input[name=paycvv], input[name=address1], #city, #zip";
+ $validate_select_fields .= "#state, #country ";
+}
+
+$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;
+
+my $payunique = "webui-payment-". time. "-$$-". rand() * 2**32;
+
+%init>