},
{
+ 'key' => 'cc-void',
+ 'section' => 'billing',
+ 'description' => 'Enable local-only voiding of credit card payments in addition to refunds against the payment gateway',
+ 'type' => 'checkbox',
+ },
+
+ {
'key' => 'address2-search',
'section' => 'UI',
'description' => 'Enable a "Unit" search box which searches the second address field',
$self->SUPER::check;
}
-=item sub cust_credit
+=item sub cust_pay
-Returns the credit (see L<FS::cust_credit>)
+Returns the payment (see L<FS::cust_pay>)
=cut
-sub cust_credit {
+sub cust_pay {
my $self = shift;
- qsearchs( 'cust_credit', { 'crednum' => $self->crednum } );
+ qsearchs( 'cust_pay', { 'paynum' => $self->paynum } );
}
-=item cust_bill
+=item cust_refund
-Returns the invoice (see L<FS::cust_bill>)
+Returns the refund (see L<FS::cust_refund>)
=cut
-sub cust_bill {
+sub cust_refund {
my $self = shift;
- qsearchs( 'cust_bill', { 'invnum' => $self->invnum } );
+ qsearchs( 'cust_refund', { 'refundnum' => $self->refundnum } );
}
=back
my $void = '';
if ( $cust_pay->closed !~ /^Y/i
- && $cust_pay->payby ne 'CARD'
+ && ( $cust_pay->payby ne 'CARD' || $conf->exists('cc-void') )
&& ( $cust_pay->payby ne 'CHEK' || $conf->exists('echeck-void') )
) {
$void = qq! (<A HREF="javascript:areyousure('!.
qq!${p}misc/void-cust_pay.cgi?!. $cust_pay->paynum.
qq!', 'Are you sure you want to void this payment?')"!.
qq! TITLE="Void this payment from the database!.
- ( $cust_pay->payby eq 'CHEK'
+ ( $cust_pay->payby =~ /^(CARD|CHEK)$/
? ' (do not send anything to the payment gateway)'
: ''
). '"'.