<THEAD>
<TR>
<TH ROWSPAN=3></TH>
- <TH COLSPAN=5>Sales</TH>
+ <TH COLSPAN=6>Sales</TH>
<TH ROWSPAN=3></TH>
<TH ROWSPAN=3>Rate</TH>
<TH ROWSPAN=3></TH>
<TH ROWSPAN=3>Tax credited</TH>
<TH ROWSPAN=3></TH>
<TH ROWSPAN=3>Net tax due</TH>
+ <TH ROWSPAN=3></TH>
+ <TH ROWSPAN=3>Tax collected</TH>
</TR>
<TR>
<TH ROWSPAN=1>Non-taxable</TH>
<TH ROWSPAN=1>Non-taxable</TH>
<TH ROWSPAN=1>Non-taxable</TH>
+ <TH ROWSPAN=2>Credited</TH>
<TH ROWSPAN=2>Taxable</TH>
</TR>
% } # if $row->{pkgclass} ne ...
% # construct base links that limit to the tax rates described by this row
+% # cust_bill_pkg.cgi wants a list of specific taxnums (and package class)
+% # cust_credit_bill_pkg.html wants a geographic scope (and package class)
% my $rowlink = ';taxnum=' . $row->{taxnums};
+% my $rowregion = ';country=' . $cgi->param('country');
+% foreach my $loc (qw(state county city district)) {
+% if ( $row->{$loc} ) {
+% $rowregion .= ";$loc=" . uri_escape($row->{$loc});
+% }
+% }
% # and also the package class, if we're limiting package class
-% $rowlink .= ';pkgclass='.$row->{pkgclass}
-% if $params{breakdown}->{pkgclass};
+% if ( $params{breakdown}->{pkgclass} ) {
+% $rowlink .= ';classnum=' . ($row->{pkgclass} || 0);
+% $rowregion .= ';classnum=' . ($row->{pkgclass} || 0);
+% }
+%warn $rowregion;
%
% if ( $row->{total} ) {
</TBODY><TBODY CLASS="total">
<% $money_sprintf->( $row->{exempt_monthly} ) %>
</A>
</TD>
+% # credited sales
+ <TD>
+ <A HREF="<% $salescreditlink . $rowregion %>">
+ <% $money_sprintf->( $row->{sales_credited} ) %>
+ </A>
+ </TD>
% # taxable sales
<TD>
<A HREF="<% $saleslink . $rowlink . ";taxable=1" %>">
% # credited tax
<TD CLASS="bigmath"> − </TD>
<TD>
- <A HREF="<% $creditlink . $rowlink %>">
- <% $money_sprintf->( $row->{credit} ) %>
- </A>
+%# <A HREF="<% $creditlink . $rowlink %>"> currently broken
+ <% $money_sprintf->( $row->{tax_credited} ) %>
+%# </A>
</TD>
% # net tax due
<TD CLASS="bigmath"> = </TD>
- <TD><% $money_sprintf->( $row->{tax} - $row->{credit} ) %></TD>
+ <TD><% $money_sprintf->( $row->{tax} - $row->{tax_credited} ) %></TD>
+% # tax collected
+ <TD> </TD>
+ <TD><% $money_sprintf->( $row->{tax_paid} ) %></TD>
</TR>
% $rownum++;
% $prev_row = $row;
<TD CLASS="rowhead">
<% emt('Out of taxable region') %>
</TD>
- <TD><% $money_sprintf->( $report->{outside } ) %></TD>
+ <TD STYLE="text-align: right">
+ <A HREF="<% $saleslink %>;out=1;taxname=<% encode_entities($params{'taxname'}) %>">
+ <% $money_sprintf->( $report->{outside } ) %>
+ </A>
+ </TD>
<TD COLSPAN=0></TD>
</TR>
</TBODY>
$agentname = $agent->agentname;
}
-if ( $cgi->param('taxname') =~ /^([\w ]+)$/ ) {
- $params{taxname} = $1;
+# allow anything in here; FS::Report::Tax will treat it as unsafe
+if ( length($cgi->param('taxname')) ) {
+ $params{taxname} = $cgi->param('taxname');
} else {
die "taxname required";
}
};
my $dateagentlink = "begin=$beginning;end=$ending";
-$dateagentlink .= $params{agentnum} if $params{agentnum};
+if ( $params{agentnum} ) {
+ $dateagentlink .= ';agentnum=' . $params{agentnum};
+}
my $saleslink = $p. "search/cust_bill_pkg.cgi?$dateagentlink;nottax=1";
my $taxlink = $p. "search/cust_bill_pkg.cgi?$dateagentlink;istax=1";
my $exemptlink = $p. "search/cust_tax_exempt_pkg.cgi?$dateagentlink";
-my $creditlink = $p. "search/cust_bill_pkg.cgi?$dateagentlink;credit=1;istax=1";
-
+my $salescreditlink = $p. "search/cust_credit_bill_pkg.html?$dateagentlink;nottax=1";
if ( $params{'credit_date'} eq 'cust_credit_bill' ) {
- $creditlink =~ s/begin/credit_begin/;
- $creditlink =~ s/end/credit_end/;
+ $salescreditlink =~ s/begin/credit_begin/;
+ $salescreditlink =~ s/end/credit_end/;
}
+#my $creditlink = $p. "search/cust_bill_pkg.cgi?$dateagentlink;credit=1;istax=1";
+#if ( $params{'credit_date'} eq 'cust_credit_bill' ) {
+# $creditlink =~ s/begin/credit_begin/;
+# $creditlink =~ s/end/credit_end/;
+#}
+my $creditlink = ''; # disabled until we find a sane way to do this
my %pkgclass_name = map { $_->classnum, $_->classname } qsearch('pkg_class');
$pkgclass_name{''} = 'Unclassified';