<STYLE TYPE="text/css">
-.invoice { font-family: sans-serif; font-size: 10pt }
-.invoice_header { font-size: 10pt }
+.invoice {
+ font-family: sans-serif;
+ font-size: 10pt;
+ display: inline-block;
+ padding: 4pt;
+ border: 1px solid black;
+ background-color: white;
+ min-width: 625px;
+ position: relative;
+}
+.invoice_header {
+ font-size: 10pt;
+ border-spacing: 4pt;
+}
.invoice_headerright TH { border-top: 2px solid #000000; border-bottom: 2px solid #000000 }
.invoice_headerright TD { font-size: 10pt; empty-cells: show }
.invoice_summary TH { border-bottom: 2px solid #000000 }
.invoice_extdesc TD { font-size: 8pt }
.invoice_totaldesc TD { font-size: 10pt; empty-cells: show }
.allcaps { text-transform:uppercase; font-size: 12pt }
+.watermark-box {
+ z-index: 10;
+ position: absolute;
+ text-align: center;
+ padding: 0;
+ filter: alpha(opacity=25);
+ opacity: 0.25;
+ width: 100%;
+ height: 100%;
+ display: table;
+ pointer-events: none;
+}
+.watermark-content {
+ display: table-cell;
+ vertical-align: middle;
+ font-size: 96pt;
+}
</STYLE>
-<table class="invoice" bgcolor="#ffffff" WIDTH=625 CELLSPACING=8><tr><td>
+<div class="invoice">
+
+ <DIV CLASS="watermark-box"><DIV CLASS="watermark-content">
+ <%= $watermark %>
+ </DIV></DIV>
<table class="invoice_header" width="100%">
<tr>
- <td><img src="<%= $cid ? "cid:$cid" : "cust_bill-logo.cgi?invnum=$invnum;template=$template" %>"></td>
<td align="left"><%= $returnaddress %></td>
+ <td align="left"><img src="<%= $cid ? "cid:$cid" : "cust_bill-logo.cgi?invnum=$invnum;template=$template" %>"></td>
<td align="right">
<table CLASS="invoice_headerright" cellspacing=0>
<tr>
</table>
</td>
</tr>
+ </table>
+ <table class="invoice_header" width="100%">
<tr>
- <td>
+ <td WIDTH="10%">
</td>
<td align="left">
<b><%= $payname %></b><BR>
$OUT .= qq! <img src="cust_bill-barcode.cgi?invnum=$invnum;template=$template"><br> !;
}
%>
- <%= $terms ? emt('Terms') . ": $terms" : '' %><BR>
+ <%= $terms ? emt('Terms') . ': ' . emt($terms) : '' %><BR>
<%= $po_line %>
</td>
</tr>
$OUT .= $header;
$columncount = scalar(my @array = split /<\/th><th/i, $header);
} else {
- $OUT .= '<th align="center">' . emt('Ref') . '</th>'.
- '<th align="left">' . emt('Description') . '</th>'.
- ( $unitprices
- ? '<th align="right">' . emt('Unit Price') . '</th>'.
- '<th align="right">' . emt('Quantity') . '</th>'
- : '' ).
- '<th align="right">' . emt('Amount') . '</th>';
+ my @headings = ( '', 'Description', 'Amount' );
+ my @aligns = ( 'center', 'left', 'right' );
+ if ( $unitprices ) {
+ splice @headings, 2, 0, 'Unit Price', 'Quantity';
+ splice @aligns, 2, 0, 'right', 'right';
+ }
+ if ( $section->{usage_section} ) {
+ @headings = ( '', 'Description', 'Calls', 'Duration', 'Amount' );
+ @aligns = ( '', 'left', 'right', 'right', 'right' );
+ $columncount = 5;
+ }
+
+ while ( @headings ) {
+ my $heading = shift @headings;
+ $heading = emt($heading) if $heading;
+ my $align = shift @aligns;
+ $OUT .= '
+ <th align="' . $align . '">' . $heading . '</th>';
+ }
}
- $OUT .= '</tr>';
+
+ $OUT .= '</tr>';
my $lastref = 0;
foreach my $line (
if ( $section->{description_generator} ) {
$OUT .= '<tr class="invoice_desc' .
&{$section->{description_generator}}($line);
+ } elsif ( $section->{usage_section} ) {
+ my $minutes = sprintf('%d', $line->{'duration'} / 60);
+ my $seconds = $line->{'duration'} % 60;
+ $OUT .= '
+ <tr class="invoice_desc_more">
+ <td></td>
+ <td align="left">' . $line->{'description'} . '</td>
+ <td align="right">' . $line->{'quantity'} . '</td>
+ <td align="right">' . $minutes . 'm ' . $seconds . 's' . '</td>
+ <td align="right">' . $line->{'amount'} . '</td>
+ </tr>';
} else {
my $class = 'invoice_desc_more';
- if ( $line->{'ref'} and $line->{'ref'} ne $lastref ) {
+ if ( ($line->{'ref'} || 0) ne $lastref ) {
# then it's a new package (not a continuation)
$class = 'invoice_desc';
}
$OUT .= '<tr class="'.$class.'">
<td align="center">';
- if ( $line->{'ref'} ne $lastref ) {
- $OUT .= $line->{'ref'};
- }
$OUT .= '</td>
<td align="left">'. $line->{'description'}. '</td>';
if ( $unitprices ) {
$OUT .= '<td align="right">'. $line->{'amount'}. '</td>';
}
$OUT .= '</tr>';
- $lastref = $line->{'ref'};
+ $lastref = $line->{'ref'} || 0;
if ( @{$line->{'ext_description'} } ) {
unless ( $section->{description_generator} ) {
$OUT .= '<tr class="invoice_extdesc"><td></td><td';
}
$OUT .= '</tr>';
}
- }
+ } # if !$section->{summarized}
if ($section->{'posttotal'}) {
$OUT .= '<tr><td align="right" colspan='. $columncount. '>';
$OUT .=
<hr NOSHADE SIZE=2 COLOR="#000000">
<p align="center" <%= $smallerfooter ? 'STYLE="font-size:75%;"' : '' %>><%= $footer %>
-</td></tr></table>
+</div>