[freeside-commits] branch master updated. 4eec6f5915c280d818ade87c0e6ce286c5d61c37

Mark Wells mark at 420.am
Tue Apr 2 16:34:02 PDT 2013


The branch, master has been updated
       via  4eec6f5915c280d818ade87c0e6ce286c5d61c37 (commit)
       via  793108995c3674d3a9078416f6c7766a458bcfb7 (commit)
       via  9eca3439d65eab28fa800557392698a580a04ab6 (commit)
      from  a59da6000c99b8fa3f391122900c44735593f544 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 4eec6f5915c280d818ade87c0e6ce286c5d61c37
Author: Mark Wells <mark at freeside.biz>
Date:   Tue Apr 2 16:33:01 2013 -0700

    running balances on "newest first" payment history, #19698

diff --git a/httemplate/view/cust_main/payment_history.html b/httemplate/view/cust_main/payment_history.html
index 66008ee..235b513 100644
--- a/httemplate/view/cust_main/payment_history.html
+++ b/httemplate/view/cust_main/payment_history.html
@@ -228,36 +228,8 @@
 
 %#display payment history
 
-%my $money_char = $conf->config('money_char') || '$';
-%
-%sub balance_forward_row {
-%  my( $b, $date, $money_char ) = @_;
-%  ( my $balance_forward = $money_char. $b ) =~ s/^\$\-/- \$/;
-
-   <TR ID="balance_forward_row">
-     <TD CLASS="grid" BGCOLOR="#dddddd">
-       <% time2str($date_format, $date) %>
-     </TD>
-
-     <TD CLASS="grid" BGCOLOR="#dddddd">
-       <I><% mt("Starting balance on [_1]", time2str($date_format, $date) ) |h %></I>
-       (<A HREF="javascript:void(0);" onClick="show_history();"><% mt('show prior history') |h %></A>)
-     </TD>
-
-     <TD CLASS="grid" BGCOLOR="#dddddd"></TD>
-     <TD CLASS="grid" BGCOLOR="#dddddd"></TD>
-     <TD CLASS="grid" BGCOLOR="#dddddd"></TD>
-     <TD CLASS="grid" BGCOLOR="#dddddd"></TD>
-     <TD CLASS="grid" BGCOLOR="#dddddd" ALIGN="right"><I><% $balance_forward %></I></TD>
-
-   </TR>
-%}
-%
-%my $balance = 0;
 %my %target = ();
 %
-%my $years =  $conf->config('payment_history-years') || 2;
-%my $older_than = time - $years * 31556926; #60*60*24*365.2422
 %my $hidden = 0;
 %my $seen = 0;
 %my $old_history = 0;
@@ -267,18 +239,9 @@
 %
 %  $lastdate = $item->{'date'};
 %
-%  my $display;
-%  if ( $item->{'date'} < $older_than ) {
+%  my $display = '';
+%  if ( $item->{'hide'} ) {
 %    $display = ' STYLE="display:none" ';
-%    $hidden = 1;
-%  } else {
-%
-%    $display = '';
-%
-%    if ( $hidden && ! $seen++ ) {
-%      balance_forward_row($balance, $item->{'date'}, $money_char);
-%    }
-%
 %  }
 %
 %  if ( $bgcolor eq $bgcolor1 ) {
@@ -314,16 +277,8 @@
 %
 %  my $target = exists($item->{'target'}) ? $item->{'target'} : '';
 %
-%  $balance += $item->{'charge'}  if exists $item->{'charge'};
-%  $balance -= $item->{'payment'} if exists $item->{'payment'};
-%  $balance -= $item->{'credit'}  if exists $item->{'credit'};
-%  $balance += $item->{'refund'}  if exists $item->{'refund'};
-%  $balance = sprintf("%.2f", $balance);
-%  $balance =~ s/^\-0\.00$/0.00/; #yay ieee fp
-%  ( my $showbalance = $money_char. $balance ) =~ s/^\$\-/- \$/;
-%
-%
-
+%  my $showbalance = $money_char . $item->{'balance'};
+%  $showbalance =~ s/^\$\-/- \$/;
 
   <TR <% $display ? $display.' ID="old_history'.$old_history++.'"'  : ''%>>
     <TD VALIGN="top" CLASS="grid" BGCOLOR="<% $bgcolor %>">
@@ -359,11 +314,11 @@
       <% $showbalance %>
     </TD>
   </TR>
-% } 
 
-%if ( scalar(@history) && $hidden && ! $seen++ ) {
-%  balance_forward_row($balance, $lastdate, $money_char);
-%}
+% if ( $item->{'balance_forward'} ) {
+<& .balance_forward_row, $item->{'balance'}, $item->{'date'} &>
+% } 
+%} # foreach $item
 
 </TABLE>
     </TD>
@@ -386,14 +341,37 @@ function show_history () {
 }
 
 </SCRIPT>
+<%def .balance_forward_row>
+%  my( $b, $date ) = @_;
+%  ( my $balance_forward = $money_char. $b ) =~ s/^\$\-/- \$/;
 
-<%init>
+   <TR ID="balance_forward_row">
+     <TD CLASS="grid" BGCOLOR="#dddddd">
+       <% time2str($date_format, $date) %>
+     </TD>
 
-my( $cust_main ) = @_;
-my $custnum = $cust_main->custnum;
+     <TD CLASS="grid" BGCOLOR="#dddddd">
+       <I><% mt("Starting balance on [_1]", time2str($date_format, $date) ) |h %></I>
+       (<A HREF="javascript:void(0);" onClick="show_history();"><% mt('show prior history') |h %></A>)
+     </TD>
+
+     <TD CLASS="grid" BGCOLOR="#dddddd"></TD>
+     <TD CLASS="grid" BGCOLOR="#dddddd"></TD>
+     <TD CLASS="grid" BGCOLOR="#dddddd"></TD>
+     <TD CLASS="grid" BGCOLOR="#dddddd"></TD>
+     <TD CLASS="grid" BGCOLOR="#dddddd" ALIGN="right"><I><% $balance_forward %></I></TD>
 
+   </TR>
+</%def>
+<%shared>
 my $conf = new FS::Conf;
 my $date_format = $conf->config('date_format') || '%m/%d/%Y';
+my $money_char = $conf->config('money_char') || '$';
+</%shared>
+<%init>
+
+my( $cust_main ) = @_;
+my $custnum = $cust_main->custnum;
 
 my $curuser = $FS::CurrentUser::CurrentUser;
 
@@ -533,12 +511,40 @@ foreach my $cust_refund ($cust_main->cust_refund) {
 
 }
 
-# sort history
+# sort in forward order first, and calculate running balances
+my $years =  $conf->config('payment_history-years') || 2;
+my $older_than = time - $years * 31556926; #60*60*24*365.2422
+my $balance = 0;
+
+ at history = sort { $a->{date} <=> $b->{date} } @history;
+my $i = 0;
+my $balance_forward;
+foreach my $item (@history) {
+  $balance += $item->{'charge'}  if exists $item->{'charge'};
+  $balance -= $item->{'payment'} if exists $item->{'payment'};
+  $balance -= $item->{'credit'}  if exists $item->{'credit'};
+  $balance += $item->{'refund'}  if exists $item->{'refund'};
+  $balance = sprintf("%.2f", $balance);
+  $balance =~ s/^\-0\.00$/0.00/;
+  $item->{'balance'} = $balance;
+
+  if ( $item->{'date'} < $older_than ) {
+    $item->{'hide'} = 1;
+  } elsif ( $history[$i-1]->{'hide'} ) {
+    # this is the end of the hidden section
+    $history[$i-1]->{'balance_forward'} = 1;
+  }
+  $i++;
+}
+if ( $history[-1]->{'hide'} ) {
+  # then everything is hidden
+  $history[-1]->{'balance_forward'} = 1;
+}
+
+# then sort in user-pref order
 if ( $curuser->option('history_order') eq 'newest' ) {
   @history = sort { $b->{date} <=> $a->{date} } @history;
-} else {
-  @history = sort { $a->{date} <=> $b->{date} } @history;
-} # no other sort orders for now
+} # else it's already oldest-first, and there are no other options yet
 
 sub translate_payby {
     my ($payby,$payinfo) = (shift,shift);

commit 793108995c3674d3a9078416f6c7766a458bcfb7
Author: Mark Wells <mark at freeside.biz>
Date:   Sat Mar 30 20:38:51 2013 -0700

    fix bad xml tags, #21703

diff --git a/httemplate/search/477partIIB.html b/httemplate/search/477partIIB.html
index c58310d..714f15a 100755
--- a/httemplate/search/477partIIB.html
+++ b/httemplate/search/477partIIB.html
@@ -3,9 +3,10 @@
 %   for ( my $row = 0; $row < scalar(@rows); $row++ ) {
 %     for my $col (0..2) {
 %       if ( exists($data[$col][$row]) ) {
-<PartII_<% $row %><% $cols[$col] %>>
-%       }
+<PartII_<% $row %><% $cols[$col] %>>\
+<% $data[$col][$row] %>\
 </PartII_<% $row %><% $cols[$col] %>>
+%       }
 %     } #for $col
 %   } #for $row
 % } else { # HTML mode

commit 9eca3439d65eab28fa800557392698a580a04ab6
Author: Mark Wells <mark at freeside.biz>
Date:   Sat Mar 30 17:25:39 2013 -0700

    more spelling

diff --git a/FS/FS/Report/FCC_477.pm b/FS/FS/Report/FCC_477.pm
index 49bb8a8..fd08814 100644
--- a/FS/FS/Report/FCC_477.pm
+++ b/FS/FS/Report/FCC_477.pm
@@ -22,26 +22,26 @@ Documentation.
 =cut
 
 @upload = qw(
- <200kpbs
- 200-768kpbs
+ <200kbps
+ 200-768kbps
  768kbps-1.5mbps
  1.5-3mpbs
  3-6mbps
  6-10mbps
  10-25mbps
  25-100mbps
- >100bmps
+ >100mbps
 );
 
 @download = qw(
- 200-768kpbs
+ 200-768kbps
  768kbps-1.5mbps
- 1.5-3mpbs
+ 1.5-3mbps
  3-6mbps
  6-10mbps
  10-25mbps
  25-100mbps
- >100bmps
+ >100mbps
 );
 
 @technology = (

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/Report/FCC_477.pm                        |   12 +-
 httemplate/search/477partIIB.html              |    5 +-
 httemplate/view/cust_main/payment_history.html |  126 ++++++++++++-----------
 3 files changed, 75 insertions(+), 68 deletions(-)




More information about the freeside-commits mailing list