% % %my $conf = new FS::Conf; %my $custnum = $cgi->param('custnum'); %my $refund = $cgi->param('refund'); %my $payby = $cgi->param('payby'); %my $reason = $cgi->param('reason'); % %my( $paynum, $cust_pay ) = ( '', '' ); %if ( $cgi->param('paynum') =~ /^(\d+)$/ ) { % $paynum = $1; % $cust_pay = qsearchs('cust_pay', { paynum=>$paynum } ) % or die "unknown payment # $paynum"; % $refund ||= $cust_pay->unrefunded; % if ( $custnum ) { % die "payment # $paynum is not for specified customer # $custnum" % unless $custnum == $cust_pay->custnum; % } else { % $custnum = $cust_pay->custnum; % } %} %die "no custnum or paynum specified!" unless $custnum; % %my $_date = time; % %my $p1 = popurl(1); % % <% include('/elements/header.html', 'Refund '. ucfirst(lc($payby)). ' payment', '') %> % if ( $cgi->param('error') ) { Error: <% $cgi->param('error') %>

% } <% small_custview($custnum, $conf->config('countrydefault')) %>

% if ( $cust_pay ) { % % #false laziness w/FS/FS/cust_pay.pm % my $payby = $cust_pay->payby; % my $paymask = $cust_pay->paymask; % $payby =~ s/^BILL$/Check/ if $paymask; % $payby =~ s/^CHEK$/Electronic check/; % %
Payment <% ntable("#cccccc", 2) %> Amount$<% $cust_pay->paid %> Date<% time2str("%D",$cust_pay->_date) %> Method<% ucfirst(lc($payby)) %> # <% $paymask %> % % #false laziness w/FS/FS/cust_main::realtime_refund_bop % if ( $cust_pay->paybatch =~ /^(\w+):(\w+)(:(\w+))?$/ ) { % my ( $processor, $auth, $order_number ) = ( $1, $2, $4 ); % Processor<% $processor %> % if ( length($auth) ) { Authorization<% $auth %> % } % if ( length($order_number) ) { Order number<% $order_number %> % } % } % }
Refund <% ntable("#cccccc", 2) %> Date<% time2str("%D",$_date) %> Amount$ Reason
<% include('/elements/footer.html') %>