add customer status column to customer & most other reports. also put the C in ACL...
[freeside.git] / httemplate / search / report_tax.cgi
index 1b6f40b..918383b 100755 (executable)
@@ -1,4 +1,173 @@
-<%
+<% include("/elements/header.html", "$agentname Sales Tax Report - ".
+              ( $beginning
+                  ? time2str('%h %o %Y ', $beginning )
+                  : ''
+              ).
+              'through '.
+              ( $ending == 4294967295
+                  ? 'now'
+                  : time2str('%h %o %Y', $ending )
+              ),
+            menubar( 'Main Menu'=>$p, )
+          )
+%>
+
+<% include('/elements/table-grid.html') %>
+
+  <TR>
+    <TH CLASS="grid" BGCOLOR="#cccccc" ROWSPAN=2></TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc" COLSPAN=9>Sales</TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc" ROWSPAN=2></TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc" ROWSPAN=2>Rate</TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc" ROWSPAN=2></TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc" ROWSPAN=2>Tax owed</TH>
+% unless ( $cgi->param('show_taxclasses') ) { 
+
+      <TH CLASS="grid" BGCOLOR="#cccccc" ROWSPAN=2>Tax invoiced</TH>
+% } 
+
+  </TR>
+  <TR>
+    <TH CLASS="grid" BGCOLOR="#cccccc">Total</TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc">Non-taxable<BR><FONT SIZE=-1>(tax-exempt customer)</FONT></TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc">Non-taxable<BR><FONT SIZE=-1>(tax-exempt package)</FONT></TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc">Non-taxable<BR><FONT SIZE=-1>(monthly exemption)</FONT></TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc">Taxable</TH>
+  </TR>
+% my $bgcolor1 = '#eeeeee';
+%   my $bgcolor2 = '#ffffff';
+%   my $bgcolor;
+%
+% foreach my $region ( @regions ) {
+%
+%       if ( $bgcolor eq $bgcolor1 ) {
+%         $bgcolor = $bgcolor2;
+%       } else {
+%         $bgcolor = $bgcolor1;
+%       }
+%
+%       my $link = '';
+%       if ( $region->{'label'} ne 'Total' ) {
+%         if ( $region->{'label'} eq $out ) {
+%           $link = ';out=1';
+%         } else {
+%           $link = ';'. $region->{'url_param'};
+%         }
+%       }
+%
+%
+%
+%
+%  
+
+
+    <TR>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $region->{'label'} %></TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>" ALIGN="right">
+        <A HREF="<% $baselink. $link %>;nottax=1"><% $money_char %><% sprintf('%.2f', $region->{'total'} ) %></A>
+      </TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><FONT SIZE="+1"><B> - </B></FONT></TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>" ALIGN="right">
+        <A HREF="<% $baselink. $link %>;nottax=1;cust_tax=Y"><% $money_char %><% sprintf('%.2f', $region->{'exempt_cust'} ) %></A>
+      </TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><FONT SIZE="+1"><B> - </B></FONT></TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>" ALIGN="right">
+        <A HREF="<% $baselink. $link %>;nottax=1;pkg_tax=Y"><% $money_char %><% sprintf('%.2f', $region->{'exempt_pkg'} ) %></A>
+      </TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><FONT SIZE="+1"><B> - </B></FONT></TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>" ALIGN="right">
+        <A HREF="<% $exemptlink. $link %>"><% $money_char %><% sprintf('%.2f', $region->{'exempt_monthly'} ) %></A>
+        </TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><FONT SIZE="+1"><B> = </B></FONT></TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>" ALIGN="right">
+        <% $money_char %><% sprintf('%.2f', $region->{'taxable'} ) %></A>
+      </TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $region->{'label'} eq 'Total' ? '' : '<FONT FACE="sans-serif" SIZE="+1"><B> X </B></FONT>' %></TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>" ALIGN="right"><% $region->{'rate'} %></TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $region->{'label'} eq 'Total' ? '' : '<FONT FACE="sans-serif" SIZE="+1"><B> = </B></FONT>' %></TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>" ALIGN="right">
+        <% $money_char %><% sprintf('%.2f', $region->{'owed'} ) %>
+      </TD>
+% unless ( $cgi->param('show_taxclasses') ) { 
+
+        <TD CLASS="grid" BGCOLOR="<% $bgcolor %>" ALIGN="right">
+          <A HREF="<% $baselink. $link %>;istax=1"><% $money_char %><% sprintf('%.2f', $region->{'tax'} ) %></A>
+        </TD>
+% } 
+
+    </TR>
+% } 
+
+
+</TABLE>
+% if ( $cgi->param('show_taxclasses') ) { 
+
+
+  <BR>
+  <% include('/elements/table-grid.html') %>
+  <TR>
+    <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
+    <TH CLASS="grid" BGCOLOR="#cccccc">Tax invoiced</TH>
+  </TR>
+% #some false laziness w/above
+%     $bgcolor1 = '#eeeeee';
+%     $bgcolor2 = '#ffffff';
+%     foreach my $region ( @base_regions ) {
+%
+%       if ( $bgcolor eq $bgcolor1 ) {
+%         $bgcolor = $bgcolor2;
+%       } else {
+%         $bgcolor = $bgcolor1;
+%       }
+%
+%       my $link = '';
+%       #if ( $region->{'label'} ne 'Total' ) {
+%         if ( $region->{'label'} eq $out ) {
+%           $link = ';out=1';
+%         } else {
+%           $link = ';'. $region->{'url_param'};
+%         }
+%       #}
+%  
+
+
+    <TR>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"><% $region->{'label'} %></TD>
+      <TD CLASS="grid" BGCOLOR="<% $bgcolor %>" ALIGN="right">
+        <A HREF="<% $baselink. $link %>;istax=1"><% $money_char %><% sprintf('%.2f', $region->{'tax'} ) %></A>
+      </TD>
+    </TR>
+% } 
+%
+%     if ( $bgcolor eq $bgcolor1 ) {
+%       $bgcolor = $bgcolor2;
+%     } else {
+%       $bgcolor = $bgcolor1;
+%     }
+%  
+
+
+  <TR>
+   <TD CLASS="grid" BGCOLOR="<% $bgcolor %>">Total</TD>
+    <TD CLASS="grid" BGCOLOR="<% $bgcolor %>" ALIGN="right">
+      <A HREF="<% $baselink %>;istax=1"><% $money_char %><% sprintf('%.2f', $tax ) %></A>
+    </TD>
+  </TR>
+
+  </TABLE>
+% } 
+
+
+</BODY>
+</HTML>
+<%init>
+
+die "access denied"
+  unless $FS::CurrentUser::CurrentUser->access_right('Financial reports');
 
 my $conf = new FS::Conf;
 my $money_char = $conf->config('money_char') || '$';
@@ -359,180 +528,12 @@ sub scalar_sql {
   $sth->fetchrow_arrayref->[0] || 0;
 }
 
-%>
 
-<%
+
 my $dateagentlink = "begin=$beginning;end=$ending";
 $dateagentlink .= ';agentnum='. $cgi->param('agentnum')
   if length($agentname);
 my $baselink   = $p. "search/cust_bill_pkg.cgi?$dateagentlink";
 my $exemptlink = $p. "search/cust_tax_exempt_pkg.cgi?$dateagentlink";
-%>
-
-<%= include("/elements/header.html", "$agentname Sales Tax Report - ".
-              ( $beginning
-                  ? time2str('%h %o %Y ', $beginning )
-                  : ''
-              ).
-              'through '.
-              ( $ending == 4294967295
-                  ? 'now'
-                  : time2str('%h %o %Y', $ending )
-              ),
-            menubar( 'Main Menu'=>$p, )
-          )
-%>
-
-<%= include('/elements/table-grid.html') %>
-
-  <TR>
-    <TH CLASS="grid" BGCOLOR="#cccccc" ROWSPAN=2></TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc" COLSPAN=9>Sales</TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc" ROWSPAN=2></TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc" ROWSPAN=2>Rate</TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc" ROWSPAN=2></TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc" ROWSPAN=2>Tax owed</TH>
-    <% unless ( $cgi->param('show_taxclasses') ) { %>
-      <TH CLASS="grid" BGCOLOR="#cccccc" ROWSPAN=2>Tax invoiced</TH>
-    <% } %>
-  </TR>
-  <TR>
-    <TH CLASS="grid" BGCOLOR="#cccccc">Total</TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc">Non-taxable<BR><FONT SIZE=-1>(tax-exempt customer)</FONT></TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc">Non-taxable<BR><FONT SIZE=-1>(tax-exempt package)</FONT></TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc">Non-taxable<BR><FONT SIZE=-1>(monthly exemption)</FONT></TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc">Taxable</TH>
-  </TR>
-
-<% my $bgcolor1 = '#eeeeee';
-   my $bgcolor2 = '#ffffff';
-   my $bgcolor;
-%>
-
-  <% foreach my $region ( @regions ) {
-
-       if ( $bgcolor eq $bgcolor1 ) {
-         $bgcolor = $bgcolor2;
-       } else {
-         $bgcolor = $bgcolor1;
-       }
-
-       my $link = '';
-       if ( $region->{'label'} ne 'Total' ) {
-         if ( $region->{'label'} eq $out ) {
-           $link = ';out=1';
-         } else {
-           $link = ';'. $region->{'url_param'};
-         }
-       }
-
-
-
-
-  %>
-
-    <TR>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"><%= $region->{'label'} %></TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>" ALIGN="right">
-        <A HREF="<%= $baselink. $link %>;nottax=1"><%= $money_char %><%= sprintf('%.2f', $region->{'total'} ) %></A>
-      </TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"><FONT SIZE="+1"><B> - </B></FONT></TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>" ALIGN="right">
-        <A HREF="<%= $baselink. $link %>;nottax=1;cust_tax=Y"><%= $money_char %><%= sprintf('%.2f', $region->{'exempt_cust'} ) %></A>
-      </TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"><FONT SIZE="+1"><B> - </B></FONT></TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>" ALIGN="right">
-        <A HREF="<%= $baselink. $link %>;nottax=1;pkg_tax=Y"><%= $money_char %><%= sprintf('%.2f', $region->{'exempt_pkg'} ) %></A>
-      </TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"><FONT SIZE="+1"><B> - </B></FONT></TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>" ALIGN="right">
-        <A HREF="<%= $exemptlink. $link %>"><%= $money_char %><%= sprintf('%.2f', $region->{'exempt_monthly'} ) %></A>
-        </TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"><FONT SIZE="+1"><B> = </B></FONT></TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>" ALIGN="right">
-        <%= $money_char %><%= sprintf('%.2f', $region->{'taxable'} ) %></A>
-      </TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"><%= $region->{'label'} eq 'Total' ? '' : '<FONT FACE="sans-serif" SIZE="+1"><B> X </B></FONT>' %></TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>" ALIGN="right"><%= $region->{'rate'} %></TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"><%= $region->{'label'} eq 'Total' ? '' : '<FONT FACE="sans-serif" SIZE="+1"><B> = </B></FONT>' %></TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>" ALIGN="right">
-        <%= $money_char %><%= sprintf('%.2f', $region->{'owed'} ) %>
-      </TD>
-      <% unless ( $cgi->param('show_taxclasses') ) { %>
-        <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>" ALIGN="right">
-          <A HREF="<%= $baselink. $link %>;istax=1"><%= $money_char %><%= sprintf('%.2f', $region->{'tax'} ) %></A>
-        </TD>
-      <% } %>
-    </TR>
-    
-  <% } %>
-
-</TABLE>
-
-
-<% if ( $cgi->param('show_taxclasses') ) { %>
-
-  <BR>
-  <%= include('/elements/table-grid.html') %>
-  <TR>
-    <TH CLASS="grid" BGCOLOR="#cccccc"></TH>
-    <TH CLASS="grid" BGCOLOR="#cccccc">Tax invoiced</TH>
-  </TR>
-
-  <% #some false laziness w/above
-     $bgcolor1 = '#eeeeee';
-     $bgcolor2 = '#ffffff';
-     foreach my $region ( @base_regions ) {
-
-       if ( $bgcolor eq $bgcolor1 ) {
-         $bgcolor = $bgcolor2;
-       } else {
-         $bgcolor = $bgcolor1;
-       }
-
-       my $link = '';
-       #if ( $region->{'label'} ne 'Total' ) {
-         if ( $region->{'label'} eq $out ) {
-           $link = ';out=1';
-         } else {
-           $link = ';'. $region->{'url_param'};
-         }
-       #}
-  %>
-
-    <TR>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>"><%= $region->{'label'} %></TD>
-      <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>" ALIGN="right">
-        <A HREF="<%= $baselink. $link %>;istax=1"><%= $money_char %><%= sprintf('%.2f', $region->{'tax'} ) %></A>
-      </TD>
-    </TR>
-
-  <% } %>
-
-  <%
-     if ( $bgcolor eq $bgcolor1 ) {
-       $bgcolor = $bgcolor2;
-     } else {
-       $bgcolor = $bgcolor1;
-     }
-  %>
-
-  <TR>
-   <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>">Total</TD>
-    <TD CLASS="grid" BGCOLOR="<%= $bgcolor %>" ALIGN="right">
-      <A HREF="<%= $baselink %>;istax=1"><%= $money_char %><%= sprintf('%.2f', $tax ) %></A>
-    </TD>
-  </TR>
-
-  </TABLE>
-
-<% } %>
-
-</BODY>
-</HTML>
-
 
+</%init>