5 include( 'elements/report_cust_pay_or_refund.html',
7 'name_singular' => 'payment',
10 include( 'elements/report_cust_pay_or_refund.html',
12 'name_singular' => 'refund',
16 <& /elements/header.html, mt($title) &>
18 <FORM ACTION="<% $table %>.html" METHOD="GET">
19 <INPUT TYPE="hidden" NAME="magic" VALUE="_date">
20 <INPUT TYPE="hidden" NAME="unapplied" VALUE="<% $unapplied %>">
22 <TABLE BGCOLOR="#cccccc" CELLSPACING=0>
25 <TH CLASS="background" COLSPAN=2 ALIGN="left">
26 <FONT SIZE="+1"><% mt('Payment search options') |h %></FONT>
31 <TD ALIGN="right"><% ucfirst(PL($name_singular)) %> of type: </TD>
33 <SELECT NAME="payby" SIZE=16 MULTIPLE>
35 %# <OPTION VALUE=""><% mt('all') |h %></OPTION>
36 %# <OPTION VALUE="CARD"><% mt('credit card (all)') |h %></OPTION>
38 <OPTION VALUE="CARD-VisaMC" SELECTED><% mt('credit card (Visa/MasterCard)') |h %></OPTION>
39 <OPTION VALUE="CARD-Amex" SELECTED><% mt('credit card (American Express)') |h %></OPTION>
40 <OPTION VALUE="CARD-Discover" SELECTED><% mt('credit card (Discover)') |h %></OPTION>
41 <OPTION VALUE="CARD-Maestro" SELECTED><% mt('credit card (Maestro/Switch/Solo)') |h %></OPTION>
42 <OPTION VALUE="CARD-Tokenized" SELECTED><% mt('credit card (Tokenized)') |h %></OPTION>
44 <OPTION VALUE="CHEK" SELECTED><% mt('electronic check / ACH') |h %></OPTION>
45 <OPTION VALUE="BILL" SELECTED><% mt('check') |h %></OPTION>
46 <OPTION VALUE="CASH" SELECTED><% mt('cash') |h %></OPTION>
47 <OPTION VALUE="PPAL" SELECTED><% mt('Paypal') |h %></OPTION>
48 <OPTION VALUE="APPL" SELECTED><% mt('Apple Store') |h %></OPTION>
49 <OPTION VALUE="ANRD" SELECTED><% mt('Android Market') |h %></OPTION>
51 <OPTION VALUE="PREP" SELECTED><% mt('prepaid card') |h %></OPTION>
52 <OPTION VALUE="WIRE" SELECTED><% mt('wire transfer') |h %></OPTION>
53 <OPTION VALUE="WEST" SELECTED><% mt('Western Union') |h %></OPTION>
54 <OPTION VALUE="EDI" SELECTED><% mt('Electronic Debit (EDI)') |h %></OPTION>
55 <OPTION VALUE="MCRD" SELECTED><% mt('manual credit card') |h %></OPTION>
56 <OPTION VALUE="MCHK" SELECTED><% mt('manual electronic check') |h %></OPTION>
62 <TD ALIGN="right"><% mt('Check #:') |h %> </TD>
64 <INPUT TYPE="text" ID="payinfo" NAME="payinfo">
68 <TD ALIGN="right"><% mt('Transaction #:') |h %> </TD>
70 <INPUT TYPE="text" ID="ccpay" NAME="ccpay">
74 <& /elements/tr-select-user.html &>
77 <TD ALIGN="right" VALIGN="center"><% mt(ucfirst($name_singular). ' date') |h %></TD>
80 <& /elements/tr-input-beginning_ending.html,
82 input_time => $conf->exists('report-cust_pay-select_time'),
90 <TD ALIGN="right" VALIGN="center"><% mt('Voided') |h %></TD>
93 <& /elements/tr-input-beginning_ending.html,
102 % if ( $table eq 'cust_pay' ) {
105 % # <& /elements/tr-select-batchnum.html &>
107 % #payment "entry" batch (should probably just all become the same thing)
108 <& /elements/tr-select-paybatch.html &>
112 <& /elements/tr-input-lessthan_greaterthan.html,
113 'label' => emt('Amount'),
122 <TABLE BGCOLOR="#cccccc" CELLSPACING=0>
125 <TH CLASS="background" COLSPAN=2 ALIGN="left">
126 <FONT SIZE="+1"><% mt('Customer search options') |h %></FONT>
130 <& /elements/tr-select-agent.html,
131 'curr_value' => scalar($cgi->param('agentnum')),
132 'label' => emt('Agent'),
133 'disable_empty' => 0,
136 <& /elements/tr-select-cust_class.html,
137 'label' => emt('Customer class'),
138 'field' => 'cust_classnum',
140 'pre_options' => [ '' => emt('(none)') ],
146 % if ( $table eq 'cust_pay' ) {
149 <TABLE BGCOLOR="#cccccc" CELLSPACING=0>
152 <TH CLASS="background" COLSPAN=2 ALIGN="left">
153 <FONT SIZE="+1"><% mt('Display options') |h %></FONT>
157 <& /elements/tr-checkbox.html,
158 'label' => emt('Include tax names'),
159 'field' => 'tax_names',
168 <INPUT TYPE="submit" VALUE="<% mt('Get Report') |h %>">
172 <& /elements/footer.html &>
176 my $table = 'cust_'.$opt{'thing'};
177 my $name_singular = $opt{'name_singular'};
180 unless $FS::CurrentUser::CurrentUser->access_right('Financial reports');
182 my $conf = new FS::Conf;
184 my $void = $cgi->param('void') ? 1 : 0;
185 my $unapplied = $cgi->param('unapplied') ? 1 : 0;
187 my $title = $void ? "Voided $name_singular report" :
188 $unapplied ? "Unapplied $name_singular report" :
189 "\u$name_singular report" ;
190 $table .= '_void' if $void;