[freeside-commits] freeside/httemplate/search svc_acct.cgi, 1.57, 1.58
Ivan,,,
ivan at wavetail.420.am
Fri Feb 12 14:42:11 PST 2010
Update of /home/cvs/cvsroot/freeside/httemplate/search
In directory wavetail.420.am:/tmp/cvs-serv24798/httemplate/search
Modified Files:
svc_acct.cgi
Log Message:
totals time used on svc_acct report
Index: svc_acct.cgi
===================================================================
RCS file: /home/cvs/cvsroot/freeside/httemplate/search/svc_acct.cgi,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -d -r1.57 -r1.58
--- svc_acct.cgi 4 Dec 2009 04:45:42 -0000 1.57
+++ svc_acct.cgi 12 Feb 2010 22:42:09 -0000 1.58
@@ -10,6 +10,7 @@
'align' => $align,
'color' => \@color,
'style' => \@style,
+ 'footer' => \@footer,
)
%>
<%once>
@@ -73,6 +74,7 @@
my $align = 'rlllr';
my @color = ( '', '', '', '', '' );
my @style = ( '', '', '', '', '' );
+my @footer = ();
for (qw( domain domsvc agentnum custnum popnum svcpart cust_fields )) {
$search_hash{$_} = $cgi->param($_) if length($cgi->param($_));
@@ -97,16 +99,26 @@
}
if ( $sortby eq 'seconds' ) {
+ my $tot_time = 0;
#push @header, 'Time remaining';
push @header, 'Time';
- push @fields, sub { my $svc_acct = shift; format_time($svc_acct->seconds) };
+ push @fields, sub { my $svc_acct = shift;
+ $tot_time += $svc_acct->seconds;
+ format_time($svc_acct->seconds);
+ };
push @links, '';
$align .= 'r';
push @color, '';
push @style, '';
+ @footer = ( '', 'Total', '', '', '',
+ sub { format_time($tot_time) }, #time
+ );
+
my $conf = new FS::Conf;
if ( $conf->exists('svc_acct-display_paid_time_remaining') ) {
+ my $tot_paid_time = 0;
+ my %tot = ( '30'=>0, '60'=>0, '90'=>0 );
push @header, 'Paid time', 'Last 30', 'Last 60', 'Last 90';
push @fields,
sub {
@@ -130,6 +142,7 @@
my $time_unpaid = $periods_unpaid * $timepermonth;
$time_unpaid *= $part_pkg->freq
if $part_pkg->freq =~ /^\d+$/ && $part_pkg->freq != 0;
+ $tot_paid_time += $seconds-$time_unpaid;
format_time($seconds-$time_unpaid).
sprintf(' (%.2fx monthly)', ( $seconds-$time_unpaid ) / $timepermonth );
},
@@ -141,6 +154,12 @@
$align .= 'rrrr';
push @color, '', '', '', '';
push @style, '', '', '', '';
+ push @footer,
+ sub { format_time($tot_paid_time) }, #paid time
+ '', #XXX sub { $tot{'30'} }, #30
+ '', #XXX sub { $tot{'60'} }, #60
+ '', #XXX sub { $tot{'90'} }, #90
+ ;
}
}
More information about the freeside-commits
mailing list