better invoice summary, RT#20601
authorIvan Kohler <ivan@freeside.biz>
Mon, 4 Feb 2013 08:48:19 +0000 (00:48 -0800)
committerIvan Kohler <ivan@freeside.biz>
Mon, 4 Feb 2013 08:48:19 +0000 (00:48 -0800)
conf/invoice_htmlsummary
conf/invoice_latexsummary

index a06c8ff..a6ea1e9 100644 (file)
         <%= 
           my ($last) = grep { $_->{tax_section} || !$_->{summarized} and !($finance_section && $_->{'description'} eq $finance_section) and $_->{'description'} !~ /^\d+ $/ } reverse @sections;
           
-          foreach my $section ( grep { $_->{tax_section} || !$_->{summarized} and !($finance_section && $_->{'description'} eq $finance_section) and $_->{'description'} !~ /^\d+ $/ } @sections ) {
+          #false laziness w/invoice_latexsummary
+          foreach my $section (
+            grep {
+                       $_->{tax_section} || !$_->{summarized}
+                   and ! $_->{adjust_section}
+                   and !($finance_section && $_->{'description'} eq $finance_section)
+                   and $_->{'description'} !~ /^\d+ $/
+                 }
+               @sections
+          ) {
             $OUT .= '<tr><td><b>'. ($section->{'description'} ? $section->{'description'} : 'Charges' ). '</b></td>';
             my $celltype = ($last == $section) ? 'th' : 'td';
             $OUT .= qq(<$celltype align="right"><b>). $section->{'subtotal'}. "</b></$celltype></tr>";
           <td><b>New Charges</b></td>
           <th align="right"><b><%= $dollar.$current_less_finance %></b></th>
         </tr>
+
+        <%= 
+          
+          #false laziness w/invoice_latexsummary and above
+          foreach my $section ( grep $_->{adjust_section}, @sections) {
+            $OUT .= '<tr><td><b>'. ($section->{'description'} ? $section->{'description'} : 'Charges' ). '</b></td>';
+            $OUT .= qq(<th align="right"><b>). $section->{'subtotal'}. "</b></th></tr>";
+          }
+        %>
+
         <tr>
           <td><b>Total Amount Due</b></td>
-          <td align="right"><b><%= $dollar.sprintf('%.2f', $true_previous_balance + $current_charges - $balance_adjustments) %></b></td>
+          <td align="right"><b><%= $dollar.sprintf('%.2f', $balance) %></b></td>
         </tr>
         <tr><th colspan=2><br></th></tr>
       </table>
index 4e4f62b..a68e5d3 100644 (file)
 \textbf{\underline{Summary of New Charges}} & \\
 &\\
 [@--
-  foreach my $section ( grep { $_->{tax_section} || !$_->{summarized} and !($finance_section && $_->{'description'} eq $finance_section) and $_->{'description'} !~ /^\d+ $/ } @sections ) {
+  #false laziness w/invoice_htmlsummary
+  foreach my $section (
+    grep {
+               $_->{tax_section} || !$_->{summarized}
+           and ! $_->{adjust_section}
+           and !($finance_section && $_->{'description'} eq $finance_section)
+           and $_->{'description'} !~ /^\d+ $/
+         }
+      @sections
+  ) {
     $OUT .= '\textbf{'. ($section->{'description'} ? $section->{'description'} : 'Charges' ). '}';
     $OUT .= '&\textbf{'. $section->{'subtotal'}. '}\\\\';
   }
 \textbf{Previous Past Due Charges}&\textbf{\dollar[@-- sprintf('%.2f', $true_previous_balance - $balance_adjustments) --@]}\\
 \textbf{Finance charges on overdue amount}&\textbf{\dollar[@-- $finance_amount --@]}\\
 \textbf{New Charges}&\textbf{\dollar[@-- $current_less_finance --@]}\\
+
+[@--
+  #false laziness w/invoice_htmlsummary and above
+  foreach my $section ( grep $_->{adjust_section}, @sections ) {
+    $OUT .= '\textbf{'. ($section->{'description'} ? $section->{'description'} : 'Charges' ). '}';
+    $OUT .= '&\textbf{'. $section->{'subtotal'}. '}\\\\';
+  }
+--@]
+
 \cline{2-2}
-\textbf{Total Amount Due}&\textbf{\dollar[@-- sprintf('%.2f', $true_previous_balance + $current_charges - $balance_adjustments) --@]}\\
+\textbf{Total Amount Due}&\textbf{\dollar[@-- sprintf('%.2f', $balance) --@]}\\
 &\\
 \hline
 \end{tabular}