first part of ACL and re-skinning work and some other small stuff
[freeside.git] / httemplate / edit / cust_bill_pay.cgi
1 <%
2
3 my($paynum, $amount, $invnum);
4 if ( $cgi->param('error') ) {
5   $paynum = $cgi->param('paynum');
6   $amount = $cgi->param('amount');
7   $invnum = $cgi->param('invnum');
8 } else {
9   my($query) = $cgi->keywords;
10   $query =~ /^(\d+)$/;
11   $paynum = $1;
12   $amount = '';
13   $invnum = '';
14 }
15
16 my $otaker = getotaker;
17
18 my $p1 = popurl(1);
19
20 %><%= header("Apply Payment", '') %>
21
22 <% if ( $cgi->param('error') ) { %>
23   <FONT SIZE="+1" COLOR="#ff0000">Error: <%= $cgi->param('error') %></FONT>
24   <BR><BR>
25 <% } %>
26
27 <FORM ACTION="<%= $p1 %>process/cust_bill_pay.cgi" METHOD=POST>
28
29 <%
30 my $cust_pay = qsearchs('cust_pay', { 'paynum' => $paynum } );
31 die "payment $paynum not found!" unless $cust_pay;
32
33 my $unapplied = $cust_pay->unapplied;
34 %>
35
36 Payment #<B><%= $paynum %></B>
37 <INPUT TYPE="hidden" NAME="paynum" VALUE="<%= $paynum %>">
38
39 <BR>Date: <B><%= time2str("%D", $cust_pay->_date) %></B>
40
41 <BR>Amount: $<B><%= $cust_pay->paid %></B>
42
43 <BR>Unapplied amount: $<B><%= $unapplied %></B>
44
45 <%
46 my @cust_bill = grep $_->owed != 0,
47                 qsearch('cust_bill', { 'custnum' => $cust_pay->custnum } );
48
49 %>
50
51 <SCRIPT>
52 function changed(what) {
53   cust_bill = what.options[what.selectedIndex].value;
54
55 <% foreach my $cust_bill ( @cust_bill ) {
56   my $invnum = $cust_bill->invnum;
57   my $changeto = $cust_bill->owed < $unapplied
58                    ? $cust_bill->owed 
59                    : $unapplied;
60 %>
61   if ( cust_bill == $invnum ) {
62     what.form.amount.value = "<%= $changeto %>";
63   }
64 <% } %>
65
66   if ( cust_bill == "Refund" ) {
67     what.form.amount.value = "<%= $unapplied %>";
68   }
69 }
70 </SCRIPT>
71
72 <BR>Invoice #<SELECT NAME="invnum" SIZE=1 onChange="changed(this)">
73 <OPTION VALUE="">
74
75 <% foreach my $cust_bill ( @cust_bill ) { %>
76
77   <OPTION<%= $cust_bill->invnum eq $invnum ? ' SELECTED' : '' %> VALUE="<%= $cust_bill->invnum %>"><%= $cust_bill->invnum %> - <%= time2str("%D", $cust_bill->_date) %> - $<%= $cust_bill->owed %>
78
79 <% } %>
80
81 <OPTION VALUE="Refund">Refund
82 </SELECT>
83
84 <BR>Amount $<INPUT TYPE="text" NAME="amount" VALUE="<%= $amount %>" SIZE=8 MAXLENGTH=8>
85
86 <BR>
87 <CENTER><INPUT TYPE="submit" VALUE="Apply"></CENTER>
88
89 </FORM>
90
91 </BODY>
92 </HTML>