4d98f3ebc8fb53683a29d36ed6e816d8317a0cf1
[freeside.git] / httemplate / view / cust_bill.cgi
1 <!-- mason kludge -->
2 <%
3
4 #untaint invnum
5 my($query) = $cgi->keywords;
6 $query =~ /^(\d+)$/;
7 my $invnum = $1;
8
9 my $cust_bill = qsearchs('cust_bill',{'invnum'=>$invnum});
10 die "Invoice #$invnum not found!" unless $cust_bill;
11 my $custnum = $cust_bill->getfield('custnum');
12
13 #my $printed = $cust_bill->printed;
14
15 print header('Invoice View', menubar(
16   "Main Menu" => $p,
17   "View this customer (#$custnum)" => "${p}view/cust_main.cgi?$custnum",
18 ));
19
20 print qq!<A HREF="${p}edit/cust_pay.cgi?$invnum">Enter payments (check/cash) against this invoice</A> | !
21   if $cust_bill->owed > 0;
22
23 print qq!<A HREF="${p}misc/print-invoice.cgi?$invnum">Reprint this invoice</A>!.      '<BR><BR>';
24
25 my $conf = new FS::Conf;
26 if ( $conf->exists('invoice_latex') ) {
27   print menubar(
28     'View typeset invoice' => "${p}view/cust_bill-pdf.cgi?$invnum",
29   ), '<BR><BR>';
30 }
31
32 #false laziness with search/cust_bill_event.cgi
33
34 print table(). '<TR><TH>Event</TH><TH>Date</TH><TH>Status</TH></TR>';
35 foreach my $cust_bill_event (
36   sort { $a->_date <=> $b->_date } $cust_bill->cust_bill_event
37 ) {
38   my $status = $cust_bill_event->status;
39   $status .= ': '. $cust_bill_event->statustext if $cust_bill_event->statustext;
40   print '<TR><TD>'. $cust_bill_event->part_bill_event->event. '</TD><TD>'.
41         time2str("%a %b %e %T %Y", $cust_bill_event->_date). '</TD><TD>'.
42         $status. '</TD></TR>';
43 }
44 print '</TABLE><BR><PRE>';
45
46 print $cust_bill->print_text;
47
48         #formatting
49         print <<END;
50     </PRE></FONT>
51   </BODY>
52 </HTML>
53 END
54
55 %>