invoice_sections_with_taxes per-agent, RT#79636
[freeside.git] / httemplate / search / report_cust_bill.html
index a7be766..d26ebdc 100644 (file)
-  <HEAD>
-    <TITLE>Invoice report criteria</TITLE>
-  </HEAD>
-  <BODY BGCOLOR="#e8e8e8">
-    <H1>Invoice report criteria</H1>
-    <FORM ACTION="cust_bill.html" METHOD="GET">
-    <INPUT TYPE="hidden" NAME="magic" VALUE="_date">
-    <TABLE>
-      <%= include( '/elements/tr-select-agent.html',
-                     $cgi->param('agentnum'),
-                     'label' => 'Invoices for agent: ',
-                 )
-      %>
-      <%= include( '/elements/tr-input-beginning_ending.html' ) %>
-      <TR>
-        <TD ALIGN="right"><INPUT TYPE="checkbox" NAME="open" VALUE="1" CHECKED></TD>
-        <TD>Show only open invoices</TD>
-      </TR>
-      <TR>
-        <TD ALIGN="right"><INPUT TYPE="checkbox" NAME="newest_percust" VALUE="1"></TD>
-        <TD>Show only the single most recent invoice per-customer</TD>
-      </TR>
-    </TABLE>
-    <BR><INPUT TYPE="submit" VALUE="Get Report">
-    </FORM>
-  </BODY>
-</HTML>
+<& /elements/header.html, mt($title, @title_arg) &>
 
+<FORM ACTION="cust_bill.html" METHOD="GET">
+<INPUT TYPE="hidden" NAME="magic" VALUE="_date">
+<INPUT TYPE="hidden" NAME="custnum" VALUE="<% $custnum %>">
+
+% unless ( $custnum ) {
+
+  <FONT CLASS="fsinnerbox-title"><% emt('Customer search options') %></FONT>
+  <TABLE CLASS="fsinnerbox">
+
+  <& /elements/tr-select-agent.html,
+                 'curr_value'    => scalar( $cgi->param('agentnum') ),
+                 'label'         => emt('Agent'),
+                 'disable_empty' => 0,
+  &>
+
+  <& /elements/tr-select-cust_main-status.html,
+       'label' => 'Customer status',
+       'field' => 'cust_status',
+  &>
+
+  <& /elements/tr-select-cust_class.html,
+      label         => mt('Customer Class'),
+      field         => 'cust_classnum',
+      multiple      => 1,
+     'pre_options'  => [ 0 => emt('(none)') ],
+  &>
+
+  </TABLE>
+  <BR>
+
+% }
+
+  <FONT CLASS="fsinnerbox-title"><% emt('Invoice search options') %></FONT>
+  <TABLE CLASS="fsinnerbox">
+
+  <& /elements/tr-input-beginning_ending.html &>
+
+  <& /elements/tr-input-lessthan_greaterthan.html,
+                label   => emt('Charged'),
+                field   => 'charged',
+  &>
+
+  <& /elements/tr-input-lessthan_greaterthan.html,
+                label   => emt('Owed'),
+                field   => 'owed',
+  &>
+
+% if ( $conf->exists('cust_bill-enable_promised_date') ) {
+  <TR>
+    
+    <TD ALIGN="right" STYLE="vertical-align:text-top">
+      <% emt('Promised payment date:') %></TD>
+    <TD>
+      <INPUT TYPE="checkbox" NAME="promised_date"   CHECKED VALUE="null">
+        <% emt('None') %> <BR>
+      <INPUT TYPE="checkbox" NAME="promised_date"   CHECKED VALUE="past">
+        <% emt('In the past') %><BR>
+      <INPUT TYPE="checkbox" NAME="promised_date"   CHECKED VALUE="future">
+        <% emt('In the future') %><BR>
+    </TD>
+  </TR>
+% }
+
+</TABLE>
+<BR>
+
+<FONT CLASS="fsinnerbox-title"><% emt('Display options') %></FONT>
+<TABLE CLASS="fsinnerbox">
+
+  <TR>
+    <TD ALIGN="right"><INPUT TYPE="checkbox" NAME="open" VALUE="1" CHECKED></TD>
+    <TD><% mt('Show only open invoices') |h %></TD>
+  </TR>
+
+  <TR>
+    <TD ALIGN="right"><INPUT TYPE="checkbox" NAME="invoiced" VALUE="1"></TD>
+    <TD><% emt('Exclude discounts from gross amount billed'), %></TD>
+  </TR>
+
+% unless ( $custnum ) {
+    <TR>
+      <TD ALIGN="right"><INPUT TYPE="checkbox" NAME="newest_percust" VALUE="1"></TD>
+      <TD><% mt('Show only the single most recent invoice per-customer') |h %></TD>
+    </TR>
+% }
+
+</TABLE>
+
+<BR>
+<INPUT TYPE="submit" VALUE="<% mt('Get Report') |h %>">
+
+</FORM>
+
+<& /elements/footer.html &>
+<%init>
+
+die "access denied"
+  unless $FS::CurrentUser::CurrentUser->access_right('List invoices');
+
+my $conf = new FS::Conf;
+
+my $title = 'Invoice Report';
+#false laziness w/report_cust_pkg.html
+my @title_arg = ();
+
+my $custnum = '';
+my $cust_main = '';
+if ( $cgi->param('custnum') =~ /^(\d+)$/ ) {
+  $custnum = $1;
+  $cust_main = qsearchs({
+    'table'     => 'cust_main', 
+    'hashref'   => { 'custnum' => $custnum },
+    'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql,
+  }) or die "unknown custnum $custnum";
+  $title .= ': [_1]';
+  push @title_arg, $cust_main->name;
+}
+
+</%init>