better invoice summary, RT#20601
[freeside.git] / conf / invoice_htmlsummary
1 <table>
2   <tr>
3     <td>
4       <table>
5         <tr><td><%= $notes %></td></tr>
6       </table>
7     </td>
8     <td>
9       <table class="invoice_summary">
10         <tr><th colspan=2><br></th></tr>
11         <tr>
12           <td><b><u><br>Summary of Previous Balance and Payments<br></u></b></td>
13           <td></td>
14         </tr>
15         <tr>
16           <td><b>Previous Balance</b></td>
17           <td align="right"><b><%= $dollar.$true_previous_balance %></b></td>
18         </tr>
19         <tr>
20           <td><b>Payments</b></td>
21           <th align="right"><b><%= $dollar.$balance_adjustments %></b></th>
22         </tr>
23         <tr>
24           <td><b>Balance Outstanding</b></td>
25           <td align="right"><b><%= $dollar.sprintf('%.2f', $true_previous_balance - $balance_adjustments) %></b></td>
26         </tr>
27         <tr><th colspan=2><br></th></tr>
28         <tr><td colspan=2><br></td></tr>
29         <tr>
30           <td><b><u>Summary of New Charges</u></b></td>
31           <td></td>
32         </tr>
33         <tr><td colspan=2><br></td></tr>
34         <%= 
35           my ($last) = grep { $_->{tax_section} || !$_->{summarized} and !($finance_section && $_->{'description'} eq $finance_section) and $_->{'description'} !~ /^\d+ $/ } reverse @sections;
36           
37           #false laziness w/invoice_latexsummary
38           foreach my $section (
39             grep {
40                        $_->{tax_section} || !$_->{summarized}
41                    and ! $_->{adjust_section}
42                    and !($finance_section && $_->{'description'} eq $finance_section)
43                    and $_->{'description'} !~ /^\d+ $/
44                  }
45                @sections
46           ) {
47             $OUT .= '<tr><td><b>'. ($section->{'description'} ? $section->{'description'} : 'Charges' ). '</b></td>';
48             my $celltype = ($last == $section) ? 'th' : 'td';
49             $OUT .= qq(<$celltype align="right"><b>). $section->{'subtotal'}. "</b></$celltype></tr>";
50           }
51         %>
52         <tr>
53           <td><b>New Charges Total</b></td>
54           <td align="right"><b><%= $dollar.$current_less_finance %></b></td>
55         </tr>
56         <tr><th colspan=2><br></th></tr>
57         <tr><td colspan=2><br></td></tr>
58         <tr>
59           <td><b><u>Invoice Summary</u></b></td>
60           <td></td>
61         </tr>
62         <tr><td colspan=2><br></td></tr>
63         <tr>
64           <td><b>Previous Past Due Charges</b></td>
65           <td align="right"><b><%= $dollar.sprintf('%.2f', $true_previous_balance - $balance_adjustments) %></b></td>
66         </tr>
67         <tr>
68           <td><b>Finance charges on overdue amount</b></td>
69           <td align="right"><b><%= $dollar.$finance_amount %></b></td>
70         </tr>
71         <tr>
72           <td><b>New Charges</b></td>
73           <th align="right"><b><%= $dollar.$current_less_finance %></b></th>
74         </tr>
75
76         <%= 
77           
78           #false laziness w/invoice_latexsummary and above
79           foreach my $section ( grep $_->{adjust_section}, @sections) {
80             $OUT .= '<tr><td><b>'. ($section->{'description'} ? $section->{'description'} : 'Charges' ). '</b></td>';
81             $OUT .= qq(<th align="right"><b>). $section->{'subtotal'}. "</b></th></tr>";
82           }
83         %>
84
85         <tr>
86           <td><b>Total Amount Due</b></td>
87           <td align="right"><b><%= $dollar.sprintf('%.2f', $balance) %></b></td>
88         </tr>
89         <tr><th colspan=2><br></th></tr>
90       </table>
91     </td>
92   </tr>
93 </table>