From fbcb45dfe5a1bce7981fe4527176b9fdf2ec54b7 Mon Sep 17 00:00:00 2001 From: ivan Date: Mon, 3 Sep 2001 22:07:39 +0000 Subject: fix more bugs --- httemplate/edit/cust_credit.cgi | 14 ++++---- httemplate/edit/cust_credit_bill.cgi | 66 +++++++++++++++++++++++++++--------- httemplate/edit/cust_pay.cgi | 33 +++++++++++++----- httemplate/edit/process/cust_pay.cgi | 26 +++++++++----- 4 files changed, 97 insertions(+), 42 deletions(-) (limited to 'httemplate/edit') diff --git a/httemplate/edit/cust_credit.cgi b/httemplate/edit/cust_credit.cgi index a95636662..9b215389a 100755 --- a/httemplate/edit/cust_credit.cgi +++ b/httemplate/edit/cust_credit.cgi @@ -1,5 +1,5 @@ <% -# +# use strict; use vars qw( $cgi $query $custnum $otaker $p1 $crednum $_date $amount $reason ); @@ -42,31 +42,29 @@ print qq!Error: !, $cgi->param('error'), if $cgi->param('error'); print < -
 END
 
 $crednum = "";
 print qq!Credit #!, $crednum ? $crednum : " (NEW)", qq!!;
 
-print qq!\nCustomer #$custnum!;
+print qq!
Customer #$custnum!; print qq!!; -print qq!\nDate: !, time2str("%D",$_date), qq!!; +print qq!
Date: !, time2str("%D",$_date), qq!!; -print qq!\nAmount \$!; +print qq!
Amount \$!; print qq!!; #print qq! Also post refund!; print qq!!; -print qq!\nReason !; +print qq!
Reason !; print <
-
+ END print < +# use strict; -use vars qw( $cgi $query $custnum $invnum $otaker $p1 $crednum $_date $amount $reason $cust_credit ); +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); @@ -32,7 +33,6 @@ if ( $cgi->param('error') ) { #$refund = 'yes'; $invnum = ''; } -$_date = time; $otaker = getotaker; @@ -44,31 +44,65 @@ print qq!Error: !, $cgi->param('error'), if $cgi->param('error'); print < -
 END
 
 die unless $cust_credit = qsearchs('cust_credit', { 'crednum' => $crednum } );
 
-print qq!Credit #!, $crednum, qq!!;
+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 -print qq!\nInvoice # "; -print qq!\nDate: !, time2str("%D",$_date), qq!!; +print < +END -print qq!\nAmount \$!; +print qq!
Invoice #"; -#print qq! Also post refund!; +print qq!
Amount \$!; print <
-
+ END print < +# use strict; -use vars qw( $cgi $invnum $p1 $_date $payby $payinfo $paid ); +use vars qw( $cgi $link $linknum $p1 $_date $payby $payinfo $paid ); use Date::Format; use CGI; use CGI::Carp qw(fatalsToBrowser); @@ -13,17 +13,27 @@ $cgi = new CGI; cgisuidsetup($cgi); if ( $cgi->param('error') ) { - $invnum = $cgi->param('invnum'); + $link = $cgi->param('link'); + $linknum = $cgi->param('linknum'); $paid = $cgi->param('paid'); $payby = $cgi->param('payby'); $payinfo = $cgi->param('payinfo'); -} else { - my ($query) = $cgi->keywords; +} elsif ($cgi->keywords) { + my($query) = $cgi->keywords; $query =~ /^(\d+)$/; - $invnum = $1; + $link = 'invnum'; + $linknum = $1; $paid = ''; - $payby = "BILL"; + $payby = 'BILL'; $payinfo = ""; +} elsif ( $cgi->param('custnum') =~ /^(\d+)$/ ) { + $link = 'custnum'; + $linknum = $1; + $paid = ''; + $payby = 'BILL'; + $payinfo = ''; +} else { + die "illegal query ". $cgi->keywords; } $_date = time; @@ -36,10 +46,15 @@ print qq!Error: !, $cgi->param('error'), print < -
+    
+    
 END
 
-print qq!Invoice #$invnum!;
+if ( $link eq 'invnum' ) {
+  print "Invoice #$linknum";
+} elsif ( $link eq 'custnum' ) {
+  print "Customer #$linknum";
+}
 
 print qq!
Date: !, time2str("%D",$_date), qq!!; diff --git a/httemplate/edit/process/cust_pay.cgi b/httemplate/edit/process/cust_pay.cgi index fcdc233b9..9be96505d 100755 --- a/httemplate/edit/process/cust_pay.cgi +++ b/httemplate/edit/process/cust_pay.cgi @@ -1,8 +1,8 @@ <% -# +# use strict; -use vars qw( $cgi $invnum $new $error ); +use vars qw( $cgi $link $linknum $new $error ); use CGI; use CGI::Carp qw(fatalsToBrowser); use FS::UID qw(cgisuidsetup); @@ -13,24 +13,32 @@ use FS::cust_pay; $cgi = new CGI; &cgisuidsetup($cgi); -$cgi->param('invnum') =~ /^(\d*)$/ or die "Illegal svcnum!"; -$invnum = $1; +$cgi->param('linknum') =~ /^(\d+)$/ + or die "Illegal linknum: ". $cgi->param('linknum'); +$linknum = $1; + +$cgi->param('link') =~ /^(custnum|invnum)$/ + or die "Illegal link: ". $cgi->param('link'); +$link = $1; $new = new FS::cust_pay ( { + $link => $linknum, map { $_, scalar($cgi->param($_)); - #} qw(invnum paid _date payby payinfo paybatch) - } fields('cust_pay') + } qw(paid _date payby payinfo paybatch) + #} fields('cust_pay') } ); -$error=$new->insert; +$error = $new->insert; if ($error) { $cgi->param('error', $error); print $cgi->redirect(popurl(2). 'cust_pay.cgi?'. $cgi->query_string ); exit; -} else { - print $cgi->redirect(popurl(3). "view/cust_bill.cgi?$invnum"); +} elsif ( $link eq 'invnum' ) { + print $cgi->redirect(popurl(3). "view/cust_bill.cgi?$linknum"); +} elsif ( $link eq 'custnum' ) { + print $cgi->redirect(popurl(3). "view/cust_main.cgi?$linknum"); } %> -- cgit v1.2.1