% if ( $link eq 'popup' ) { <& /elements/header-popup.html, mt('Refund Receipt') &>
<% mt('Print') |h %> % if ( $cust_main->invoicing_list_emailonly ) { | <% mt('Email') |h %> % }
% } elsif ( $link eq 'print' ) { <& /elements/header-popup.html, mt('Refund Receipt') &> % #it would be nice if the menubar could be hidden for print, but better to % # have it available than not, otherwise the user winds up at a dead end <% menubar( emt("View this customer (#[_1])",$display_custnum) => "${p}view/cust_main.cgi?$custnum", ) %>

% } elsif ( $link eq 'email' ) { % if ( $email_error ) { <& /elements/header-popup.html, mt("Error re-emailing receipt: [_1]", $email_error) &> % } else { <& /elements/header-popup.html, mt("Re-emailed receipt") &> % } % } else { <& /elements/header.html, mt('Refund Receipt'), menubar( emt("View this customer (#[_1])",$display_custnum) => "${p}view/cust_main.cgi?$custnum", emt('Print receipt') => $pr_link, ) &> % } % unless ($link =~ /^(popup|email)$/ ) { <& /elements/small_custview.html, $custnum, scalar($conf->config('countrydefault')), 1, #no balance &>

% } <% ntable("#cccccc", 2) %> <% mt('Refund #') |h %> <% $cust_refund->refundnum %> <% mt('Date') |h %> <% time2str"%a %b %o, %Y %r", $cust_refund->_date %> <% mt('Amount') |h %> <% $money_char. $cust_refund->refund %> <% mt('Reason') |h %> <% $cust_refund->reason %> <% mt('Refund method') |h %> <% $cust_refund->payby_name %><% $cust_refund->paymask ? ' #'.$cust_refund->paymask : '' %> % if ( $cust_refund->payby =~ /^(CARD|CHEK|LECB)$/ && $cust_refund->processor ) { <% mt('Processor') |h %> <% $cust_refund->processor %> <% mt('Authorization #') |h %> <% $cust_refund->auth %> % if ( $cust_refund->order_number ) { <% mt('Order #') |h %> <% $cust_refund->order_number %> % } % } % if ( $link eq 'print' ) { % } elsif ( $link eq 'email' ) { % } % if ( $link =~ /^(popup|print|email)$/ ) { % } else { <& /elements/footer.html &> % } <%init> my $curuser = $FS::CurrentUser::CurrentUser; die "access denied" unless $curuser->access_right('View invoices') #remove this in 2.5 (2.7?) || $curuser->access_right('View refunds'); $cgi->param('refundnum') =~ /^(\d+)$/ or die "no refundnum"; my $refundnum = $1; my $link = ''; if ( $cgi->param('link') =~ /^(\w+)$/ ) { $link = $1; } my $cust_refund = qsearchs({ 'select' => 'cust_refund.*', 'table' => 'cust_refund', 'addl_from' => 'LEFT JOIN cust_main USING ( custnum )', 'hashref' => { 'refundnum' => $refundnum }, 'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql, }); die "Refund #$refundnum not found!" unless $cust_refund; my $cust_main = $cust_refund->cust_main; my $pr_link = "${p}view/cust_refund.html?link=print;refundnum=$refundnum"; my $email_link = "${p}view/cust_refund.html?link=email;refundnum=$refundnum"; my $custnum = $cust_refund->custnum; my $display_custnum = $cust_main->display_custnum; my $conf = new FS::Conf; my $money_char = $conf->config('money_char') || '$'; tie my %payby, 'Tie::IxHash', FS::payby->payby2longname; my $email_error; if ( $link eq 'email' ) { $email_error = $cust_refund->send_receipt( 'cust_main' => $cust_main ); warn "can't send refund receipt: $email_error" if $email_error; }