+ push @taxes, {
+ 'label' => 'Total',
+ 'url_param' => '',
+ 'tax' => $tax,
+ 'credit' => $credit,
+ 'base' => 1,
+ };
+
+
+ my $dateagentlink = "begin=$args{beginning};end=$args{ending}";
+ $dateagentlink .= ';agentnum='. $args{agentnum}
+ if length($agentname);
+ my $baselink = $args{p}. "search/cust_bill_pkg.cgi?$dateagentlink";
+ my $creditlink = $args{p}. "search/cust_credit_bill_pkg.html?$dateagentlink";
+
+ print $report <<EOF;
+
+ <% include("/elements/header.html", "$agentname Tax Report - ".
+ ( $args{beginning}
+ ? time2str('%h %o %Y ', $args{beginning} )
+ : ''
+ ).
+ 'through '.
+ ( $args{ending} == 4294967295
+ ? 'now'
+ : time2str('%h %o %Y', $args{ending} )
+ )
+ )
+ %>
+
+ <% include('/elements/table-grid.html') %>
+
+ <TR>
+ <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
+ <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
+ <TH CLASS="grid" BGCOLOR="#cccccc">Tax invoiced</TH>
+ <TH CLASS="grid" BGCOLOR="#cccccc"> </TH>
+ <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
+ <TH CLASS="grid" BGCOLOR="#cccccc">Tax credited</TH>
+ </TR>
+EOF
+
+ my $bgcolor1 = '#eeeeee';
+ my $bgcolor2 = '#ffffff';
+ my $bgcolor = '';
+
+ $count = scalar(@taxes);
+ $calculated = 0;
+ foreach my $tax ( @taxes ) {
+
+ if ( $args{job} ) {
+ if ( time - $min_sec > $last ) {
+ $args{job}->update_statustext( int( 100 * $calculated / $count ).
+ ",Generated"
+ );
+ $last = time;
+ }
+ }
+
+ if ( $bgcolor eq $bgcolor1 ) {
+ $bgcolor = $bgcolor2;
+ } else {
+ $bgcolor = $bgcolor1;
+ }
+
+ my $link = '';
+ if ( $tax->{'label'} ne 'Total' ) {
+ $link = ';'. $tax->{'url_param'};
+ }
+
+ print $report <<EOF;
+ <TR>
+ <TD CLASS="grid" BGCOLOR="<% '$bgcolor' %>"><% '$tax->{label}' %></TD>
+ <% ($tax->{base}) ? qq!<TD CLASS="grid" BGCOLOR="$bgcolor"></TD>! : '' %>
+ <TD CLASS="grid" BGCOLOR="<% '$bgcolor' %>" ALIGN="right">
+ <A HREF="<% '$baselink$link' %>;istax=1"><% '$money_char' %><% sprintf('%.2f', $tax->{'tax'} ) %></A>
+ </TD>
+ <% !($tax->{base}) ? qq!<TD CLASS="grid" BGCOLOR="$bgcolor"></TD>! : '' %>
+ <TD CLASS="grid" BGCOLOR="<% '$bgcolor' %>"></TD>
+ <% ($tax->{base}) ? qq!<TD CLASS="grid" BGCOLOR="$bgcolor"></TD>! : '' %>
+ <TD CLASS="grid" BGCOLOR="<% '$bgcolor' %>" ALIGN="right">
+ <A HREF="<% '$creditlink$link' %>;istax=1;iscredit=rate"><% '$money_char' %><% sprintf('%.2f', $tax->{'credit'} ) %></A>
+ </TD>
+ <% !($tax->{base}) ? qq!<TD CLASS="grid" BGCOLOR="$bgcolor"></TD>! : '' %>
+ </TR>
+EOF
+ }
+
+ print $report <<EOF;
+ </TABLE>
+
+ </BODY>
+ </HTML>
+EOF
+
+ my $reportname = $report->filename;
+ close $report;
+
+ my $dropstring = '%%%FREESIDE_CACHE%%%/cache.'. $FS::UID::datasrc. '/report.';
+ $reportname =~ s/^$dropstring//;
+
+ my $reporturl = "%%%ROOTURL%%%/misc/queued_report?report=$reportname";
+ die "<a href=$reporturl>view</a>\n";