fix up some bugs in processing payments via self-service... appears to be
authorivan <ivan>
Mon, 19 May 2003 13:54:55 +0000 (13:54 +0000)
committerivan <ivan>
Mon, 19 May 2003 13:54:55 +0000 (13:54 +0000)
working so far

FS/FS/ClientAPI/MyAccount.pm
fs_selfservice/FS-SelfService/SelfService.pm
fs_selfservice/FS-SelfService/cgi/make_payment.html
fs_selfservice/FS-SelfService/cgi/selfservice.cgi

index 2ce55a8..6e9bf23 100644 (file)
@@ -17,11 +17,12 @@ use FS::cust_main_county;
 
 use FS::ClientAPI; #hmm
 FS::ClientAPI->register_handlers(
-  'MyAccount/login'         => \&login,
-  'MyAccount/customer_info' => \&customer_info,
-  'MyAccount/invoice'       => \&invoice,
-  'MyAccount/cancel'        => \&cancel,
-  'MyAccount/payment_info'  => \&payment_info,
+  'MyAccount/login'            => \&login,
+  'MyAccount/customer_info'    => \&customer_info,
+  'MyAccount/invoice'          => \&invoice,
+  'MyAccount/cancel'           => \&cancel,
+  'MyAccount/payment_info'     => \&payment_info,
+  'MyAccount/process_payment'  => \&process_payment,
 );
 
 #store in db?
@@ -175,7 +176,7 @@ sub payment_info {
 
 };
 
-sub make_payment{
+sub process_payment {
   my $p = shift;
 
   my $session = $cache->get($p->{'session_id'})
index c561dab..5849b28 100644 (file)
@@ -16,14 +16,15 @@ $VERSION = '0.03';
 $socket =  "/usr/local/freeside/selfservice_socket";
 
 %autoload = (
-  'passwd'        => 'passwd/passwd',
-  'chfn'          => 'passwd/passwd',
-  'chsh'          => 'passwd/passwd',
-  'login'         => 'MyAccount/login',
-  'customer_info' => 'MyAccount/customer_info',
-  'invoice'       => 'MyAccount/invoice',
-  'cancel'        => 'MyAccount/cancel',
-  'payment_info'  => 'MyAccount/payment_info',
+  'passwd'          => 'passwd/passwd',
+  'chfn'            => 'passwd/passwd',
+  'chsh'            => 'passwd/passwd',
+  'login'           => 'MyAccount/login',
+  'customer_info'   => 'MyAccount/customer_info',
+  'invoice'         => 'MyAccount/invoice',
+  'cancel'          => 'MyAccount/cancel',
+  'payment_info'    => 'MyAccount/payment_info',
+  'process_payment' => 'MyAccount/process_payment',
 );
 @EXPORT_OK = keys %autoload;
 
index fdb411b..1d860f0 100644 (file)
@@ -8,7 +8,7 @@
 <FONT SIZE=4>Make a payment</FONT><BR><BR>
 <FORM NAME="OneTrueForm" METHOD="POST" ACTION="<%=$selfurl%>" onSubmit="document.OneTrueForm.process.disabled=true">
 <INPUT TYPE="hidden" NAME="session" VALUE="<%=$session_id%>">
-<INPUT TYPE="hidden" NAME="action" VALUE="process_payment">
+<INPUT TYPE="hidden" NAME="action" VALUE="do_payment">
 <TABLE BGCOLOR="#cccccc">
 <TR>
   <TD ALIGN="right">Amount&nbsp;Due</TD>
 </TR>
 </TABLE>
 <BR>
-<INPUT TYPE="hidden" NAME="paybatch" VALUE="$paybatch">
+<INPUT TYPE="hidden" NAME="paybatch" VALUE="<%=$paybatch%>">
 <INPUT TYPE="submit" NAME="process" VALUE="Process payment"> <!-- onClick="this.disabled=true"> -->
 </FORM>
 </TD></TR></TABLE>
index d43df40..456d2dd 100644 (file)
@@ -6,7 +6,8 @@ use subs qw(do_template);
 use CGI;
 use CGI::Carp qw(fatalsToBrowser);
 use Text::Template;
-use FS::SelfService qw(login customer_info invoice payment_info);
+use FS::SelfService qw( login customer_info invoice payment_info
+                        process_payment );
 
 $template_dir = '.';
 
@@ -54,7 +55,7 @@ if ( $cgi->param('session') eq 'login' ) {
 $session_id = $cgi->param('session');
 
 $cgi->param('action') =~
-    /^(myaccount|view_invoice|make_payment|process_payment)$/
+    /^(myaccount|view_invoice|make_payment|do_payment)$/
   or die "unknown action ". $cgi->param('action');
 my $action = $1;
 
@@ -94,7 +95,7 @@ sub make_payment {
   payment_info( 'session_id' => $session_id );
 }
 
-sub process_payment {
+sub do_payment {
 
   use Business::CreditCard;