diff options
Diffstat (limited to 'conf/invoice_html')
| -rw-r--r-- | conf/invoice_html | 249 | 
1 files changed, 249 insertions, 0 deletions
| diff --git a/conf/invoice_html b/conf/invoice_html new file mode 100644 index 000000000..df4674b6a --- /dev/null +++ b/conf/invoice_html @@ -0,0 +1,249 @@ +<STYLE TYPE="text/css"> +.invoice { font-family: sans-serif; font-size: 10pt } +.invoice_header { font-size: 10pt } +.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_summary TD { font-size: 10pt; empty-cells: show } +.invoice_longtable table { cellspacing: none } +.invoice_longtable TH { border-top: 2px solid #000000; border-bottom: 1px solid #000000; padding-left: none; padding-right: none; font-size: 10pt } +.invoice_desc TD { border-top: 2px solid #000000; font-weight: bold; font-size: 10pt } +.invoice_desc_more TD { font-weight: bold; font-size: 10pt } +.invoice_extdesc TD { font-size: 8pt } +.invoice_totaldesc TD { font-size: 10pt; empty-cells: show } +</STYLE> + +<table class="invoice" bgcolor="#ffffff" WIDTH=625 CELLSPACING=8><tr><td> + +  <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="right"> +        <table CLASS="invoice_headerright" cellspacing=0> +          <tr> +            <td align="center"> +              Invoice date<BR> +              <B><%= $date %></B> +            </td> +            <td> +            </td> +            <td align="center"> +              Invoice #<BR> +              <B><%= $invnum %></B> +            </td> +            <td> +            </td> +            <td align="center"> +              Customer #<BR> +              <B><%= $custnum %></B> +            </td> +          </tr> +          <tr> +            <th> </th> +            <th colspan=3 align="center"> +              <FONT SIZE="+3"><%= $notice_name ? substr($notice_name, 0, 1) : 'I' %></FONT><FONT SIZE="+2"><%= $notice_name ? uc(substr($notice_name, 1)) : 'NVOICE' %></FONT> +            </th> +            <th> </th> +          </tr> +        </table> +      </td> +    </tr> + +    <tr> +      <td> +      </td> +      <td align="left"> +        <b><%= $payname %></b><BR> +        <%= join('<BR>', grep length($_), $company, +                                          $address1, +                                          $address2, +                                          "$city, $state  $zip", +                                          $country, +                ) +        %> +      </td> +      <%= $ship_enable ? ('<td align="left">'. +                          join('<BR>',grep length($_), '<b>Service Address</b>', +                                                       $ship_company, +                                                       $ship_address1, +                                                       $ship_address2, +                                                       "$ship_city, $ship_state $ship_zip", +                                                       $ship_country, +                                                       ' ', +                                                       ' ', +                              ). +                           '</td><tr><td></td><td></td>' +                         ) +                       : '' +      %> +      <td align="right"> +        Terms: <%= $terms %><BR> +        <%= $po_line %> +      </td> +    </tr> + +  </table> +  <%= $summary %> +  <%= +      foreach my $section ( grep { !$summary || $_->{description} ne $finance_section } @sections ) { +        if ($section->{'pretotal'} && !$summary) { +          $OUT .= +            '<table width="100%"><tr><td>'. +            '<p align="right"><b><font size="+1">'. +            uc(substr($section->{'pretotal'},0,1)). +            '</font><font size="+0">'. uc(substr($section->{'pretotal'},1)). +            '</font></b>'. +            '<p>'. +            '</td></tr></table>'; +        } +        unless ($section->{'summarized'}) { +          $OUT .= '<table><tr><td>'; +          if ($section->{'description'}) { +            $OUT .= +              '<p><b><font size="+1">'. uc(substr($section->{'description'},0,1)). +              '</font><font size="+0">'. uc(substr($section->{'description'},1)). +              '</font></b>'. +              '<p>'; +          }else{ +            $OUT .= +              '<p><b><font size="+1">C</font><font size="+0">HARGES</font></b>'. +              '<p>'; +          } +          $OUT .= '</td></tr></table>'; + +          $OUT .= +            '<table class="invoice_longtable" CELLSPACING=0 WIDTH="100%">'. +            '<tr>'; + +          if ($section->{header_generator}) { +            $OUT .= &{$section->{header_generator}}(); +          } else { +            $OUT .=  '<th align="center">Ref</th>'. +                     '<th align="left">Description</th>'. +                        ( $unitprices  +                          ? '<th align="left">Unit Price</th>'. +                            '<th align="left">Quantity</th>' +                          : '' +                        ).  +                      '<th align="right">Amount</th>'; +          } +            '</tr>'; + +          my $lastref = 0; +          foreach my $line ( +            grep { ( scalar(@sections) > 1  +                   ? $section->{'description'} eq $_->{'section'}->{'description'} +                   : 1 +                 ) } +            @detail_items ) +          { +            $OUT .= +              '<tr class="invoice_desc'; +            if ( $section->{description_generator} ) { +              $OUT .= &{$section->{description_generator}}($line); +            } else { +              $OUT .=  ( ($line->{'ref'} && $line->{'ref'} ne $lastref) ? '' : '_more' ). +                       '">'. +                       '<td align="center">'.  +                       ( $line->{'ref'} ne $lastref ? $line->{'ref'} : '' ). '</td>'. +                       '<td align="left">'. $line->{'description'}. '</td>'. +                       ( $unitprices  +                           ? '<td align="left">'. $line->{'unit_amount'}. '</td>'. +                             '<td align="left">'. $line->{'quantity'}. '</td>' +                           : '' +                       ). + +                       '<td align="right">'. $line->{'amount'}. '</td>'; +            } +            $OUT .= '</tr>'; +            $lastref = $line->{'ref'}; +            if ( @{$line->{'ext_description'} } ) { +              $OUT .= '<tr class="invoice_extdesc"><td></td><td'; +              $OUT .= $unitprices ? ' colspan=3>' : '>'; +              $OUT .= '<table width="100%">'; +              foreach my $ext_desc ( @{$line->{'ext_description'} } ) { +                $OUT .= +                  '<tr class="invoice_extdesc">'. +                    '<td align="left" '. +                         ( $ext_desc =~ /<\/?TD>/i ? '' : 'colspan=99' ). '>'. +                      '  '. $ext_desc. +                    '</td>'. +                  '</tr>' +              } +              $OUT .= '</table></td><td></td></tr>'; +            } +          } + + +          if (scalar(@sections) > 1) { +            my $style = 'border-top: 3px solid #000000;'. +                        'border-bottom: 3px solid #000000;'; +            $OUT .= +              '<tr class="invoice_totaldesc">'. +              qq(<td style="$style"> </td>); +            if ($section->{total_generator}) { +              $OUT .= &{$section->{total_generator}}($section); +            } else { +              $OUT .= qq(<td align="left" style="$style").  +                      ( $unitprices ? ' colspan=3>' : '>' ). +                      $section->{'description'}. ' Total </td>'. +                      qq(<td align="right" style="$style">). +                      $section->{'subtotal'}. '</td>'; +            } +            $OUT .= '</tr>'; +          } +        }  +        if ($section->{'posttotal'}) { +          $OUT .= '<tr><td align="right" colspan=5>'; +          $OUT .= +            '<p><font size="+1">'. $section->{'posttotal'}. +            '</font>'. +            '<p>'; +          $OUT .= '</td></tr>'; +        } + +      } + +      my $style = 'border-top: 3px solid #000000;'; +      my $linenum = 0; + +      foreach my $line ( @total_items ) { + +        $style .= 'border-bottom: 3px solid #000000;' +          if ++$linenum == scalar(@total_items); + +        $OUT .= +          '<tr class="invoice_totaldesc">'; +        if ($section->{total_line_generator}) { +          $OUT .= &{$section->{total_line_generator}}($line); +        } else { +          $OUT .= qq(<td style="$style"> </td>). +                  qq(<td align="left" style="$style"). +                  ( $unitprices ? ' colspan=3>' : '>' ). +                    $line->{'total_item'}. '</td>'. +                  qq(<td align="right" style="$style">). +                    $line->{'total_amount'}. '</td>'; +        } +        $OUT .= '</tr>'; + +        $style=''; + +      } + +    %> +  </table> +  <br><br> + +<%= length($summary) +      ? '' +      : ( $smallernotes +            ? '<FONT SIZE="-1">'.$notes.'</FONT>' +            : $notes +        ) +%> + +  <hr NOSHADE SIZE=2 COLOR="#000000"> +  <p align="center" <%= $smallerfooter ? 'STYLE="font-size:75%;"' : '' %>><%= $footer %> + +</td></tr></table> | 
