%
%
%#untaint invnum
%my($query) = $cgi->keywords;
%$query =~ /^((.+)-)?(\d+)$/;
%my $templatename = $2;
%my $invnum = $3;
%
%my $conf = new FS::Conf;
%
%my @payby = grep /\w/, $conf->config('payby');
%#@payby = (qw( CARD DCRD CHEK DCHK LECB BILL CASH WEST COMP ))
%@payby = (qw( CARD DCRD CHEK DCHK LECB BILL CASH COMP ))
% unless @payby;
%my %payby = map { $_=>1 } @payby;
%
%my $cust_bill = qsearchs('cust_bill',{'invnum'=>$invnum});
%die "Invoice #$invnum not found!" unless $cust_bill;
%my $custnum = $cust_bill->getfield('custnum');
%
%#my $printed = $cust_bill->printed;
%
%my $link = $templatename ? "$templatename-$invnum" : $invnum;
%
%
<% include("/elements/header.html",'Invoice View', menubar(
"Main Menu" => $p,
"View this customer (#$custnum)" => "${p}view/cust_main.cgi?$custnum",
)) %>
% if ( $cust_bill->owed > 0
% && ( $payby{'BILL'} || $payby{'CASH'} || $payby{'WEST'} || $payby{'MCRD'} )
% )
% {
% my $s = 0;
%
Post
% if ( $payby{'BILL'} ) {
<% $s++ ? ' | ' : '' %>
check
% }
% if ( $payby{'CASH'} ) {
<% $s++ ? ' | ' : '' %>
cash
% }
% if ( $payby{'WEST'} ) {
<% $s++ ? ' | ' : '' %>
Western Union
% }
% if ( $payby{'MCRD'} ) {
<% $s++ ? ' | ' : '' %>
manual credit card
% }
payment against this invoice
% }
Re-print this invoice
% if ( grep { $_ ne 'POST' } $cust_bill->cust_main->invoicing_list ) {
| Re-email
this invoice
% }
% if ( $conf->exists('hylafax') && length($cust_bill->cust_main->fax) ) {
| Re-fax
this invoice
% }
% if ( $conf->exists('invoice_latex') ) {
View typeset invoice
% }
% #false laziness with search/cust_bill_event.cgi
% unless ( $templatename ) {
<% table() %>
<% join('', $cust_bill->print_text('', $templatename) ) %>% }