<% # use strict; use vars qw( $cgi $query $custnum $invnum $otaker $p1 $crednum $amount $reason $cust_credit ); use Date::Format; use CGI; use CGI::Carp qw(fatalsToBrowser); use Date::Format; use FS::UID qw(cgisuidsetup getotaker); use FS::CGI qw(header popurl); use FS::Record qw(qsearch fields); use FS::cust_credit; use FS::cust_bill; $cgi = new CGI; cgisuidsetup($cgi); if ( $cgi->param('error') ) { #$cust_credit_bill = new FS::cust_credit_bill ( { # map { $_, scalar($cgi->param($_)) } fields('cust_credit_bill') #} ); $crednum = $cgi->param('crednum'); $amount = $cgi->param('amount'); #$refund = $cgi->param('refund'); $invnum = $cgi->param('invnum'); } else { ($query) = $cgi->keywords; $query =~ /^(\d+)$/; $crednum = $1; $amount = ''; #$refund = 'yes'; $invnum = ''; } $otaker = getotaker; $p1 = popurl(1); print $cgi->header( '-expires' => 'now' ), header("Apply Credit", ''); print qq!Error: !, $cgi->param('error'), "

" if $cgi->param('error'); print < END die unless $cust_credit = qsearchs('cust_credit', { 'crednum' => $crednum } ); my $credited = $cust_credit->credited; print "Credit # $crednum". qq!!. '
Date: '. time2str("%D", $cust_credit->_date). ''. '
Amount: $'. $cust_credit->amount. ''. "
Unapplied amount: \$$credited". '
Reason: '. $cust_credit->reason. '' ; my @cust_bill = grep $_->owed != 0, qsearch('cust_bill', { 'custnum' => $cust_credit->custnum } ); print < function changed(what) { cust_bill = what.options[what.selectedIndex].value; END foreach my $cust_bill ( @cust_bill ) { my $invnum = $cust_bill->invnum; my $changeto = $cust_bill->owed < $cust_credit->credited ? $cust_bill->owed : $cust_credit->credited; print < END print qq!
Invoice #"; print qq!
Amount \$!; print < END print < END %>