search for payments by customer location, RT#76691
[freeside.git] / httemplate / search / elements / report_cust_pay_or_refund.html
index 70727c0..fc0db63 100644 (file)
@@ -23,19 +23,27 @@ Examples:
 
   <TR>
     <TH CLASS="background" COLSPAN=2 ALIGN="left">
-      <FONT SIZE="+1"><% mt('Payment search options') |h %></FONT>
+      <FONT SIZE="+1"><% mt('[_1] search options', ucfirst($name_singular)) |h %></FONT>
     </TH>
   </TR>
 
   <& /elements/tr-select.html,
     label     => ucfirst(PL($name_singular)) . ' of type:',
     field     => 'payby',
-    options   => [ keys(\%payby) ],
+    options   => [ keys %payby ],
     labels    => \%payby,
     multiple  => 1,
-    size      => 16
+    size      => 18,
   &>
 
+% if (substr($conf->config('card_masking_method'), -5) eq 'last4' || !$conf->config('card_masking_method')) {
+  <TR>
+    <TD ALIGN="right"><% mt('Card Last 4 #:') |h %></TD>
+    <TD>
+      <INPUT TYPE="text" ID="paymask" NAME="paymask">
+    </TD>
+  </TR>
+% } 
   <TR>
     <TD ALIGN="right"><% mt('Check #:') |h %> </TD>
     <TD>
@@ -51,6 +59,20 @@ Examples:
 
   <& /elements/tr-select-user.html &>
 
+% if ( $has_reason ) {
+%   # limit to reasons that are in use for the table being reported on
+%   # (maybe order by count(*) desc?)
+  <& /elements/tr-select-table.html,
+    label       => emt('Reason'),
+    field       => 'reasonnum',
+    id          => 'reasonnum',
+    table       => 'reason',
+    name_col    => 'reason',
+    extra_sql   => " WHERE EXISTS(SELECT 1 FROM $table WHERE $table.reasonnum = reason.reasonnum) ",
+    empty_label => emt('any'),
+  &>
+% }
+
   <TR>
     <TD ALIGN="right" VALIGN="center"><% mt(ucfirst($name_singular). ' date') |h %></TD>
     <TD>
@@ -105,6 +127,10 @@ Examples:
     </TH>
   </TR>
 
+  <& /elements/tr-select-cust_tag.html,
+             'custnum' => $opt{'custnum'},
+  &>
+
   <& /elements/tr-select-agent.html,
                  'curr_value'    => scalar($cgi->param('agentnum')),
                  'label'         => emt('Agent'),
@@ -118,6 +144,8 @@ Examples:
        'pre_options'  => [ 0 => emt('(none)') ],
   &>
 
+  <& options_cust_location.html &>
+
 </TABLE>
 
 % if ( $table eq 'cust_pay' ) { 
@@ -137,6 +165,12 @@ Examples:
                 'value' => 1,
   &>
 
+  <& /elements/tr-checkbox.html,
+                'label' => emt('Include order number'),
+                'field' => 'show_order_number',
+                'value' => 1,
+  &>
+
 </TABLE>
 
 % }
@@ -166,6 +200,8 @@ my $title = $void ? "Voided $name_singular report" :
             "\u$name_singular report" ;
 $table .= '_void' if $void;
 
+my $has_reason = dbdef->table($table)->column('reasonnum');
+
 tie (my %payby, 'Tie::IxHash',
   'CARD-VisaMC'    => 'credit card (Visa/MasterCard)',
   'CARD-Amex'      => 'credit card (American Express)',
@@ -183,6 +219,7 @@ tie (my %payby, 'Tie::IxHash',
   'PREP'           => 'prepaid card',
   'WIRE'           => 'wire transfer',
   'WEST'           => 'Western Union',
+  'IDTP'           => 'IDT Payment Services',
   'EDI'            => 'Electronic Debit (EDI)',
   'MCRD'           => 'manual credit card',
   'MCHK'           => 'manual electronic check',