[freeside-commits] freeside/FS/FS/ClientAPI Signup.pm,1.28,1.29

Jeff Finucane,420,, jeff at wavetail.420.am
Sun Nov 26 23:11:55 PST 2006


Update of /home/cvs/cvsroot/freeside/FS/FS/ClientAPI
In directory wavetail:/tmp/cvs-serv23561/FS/FS/ClientAPI

Modified Files:
	Signup.pm 
Log Message:
order package from self-service

Index: Signup.pm
===================================================================
RCS file: /home/cvs/cvsroot/freeside/FS/FS/ClientAPI/Signup.pm,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -d -r1.28 -r1.29
--- Signup.pm	14 Nov 2006 03:16:26 -0000	1.28
+++ Signup.pm	27 Nov 2006 07:11:52 -0000	1.29
@@ -119,6 +119,19 @@
     } else {
       return { 'error' => "Can't resume session" }; #better error message
     }
+  }elsif( exists $packet->{'customer_session_id'} ) {
+    my $cache = new FS::ClientAPI_SessionCache( {
+      'namespace' => 'FS::ClientAPI::MyAccount',
+    } );
+    $session = $cache->get($packet->{'customer_session_id'});
+    if ( $session ) {
+      my $custnum = $session->{'custnum'};
+      my $cust_main = qsearchs('cust_main', { 'custnum' => $custnum });
+      return { 'error' => "Can't find your customer record" } unless $cust_main;
+      $agentnum = $cust_main->agentnum;
+    } else {
+      return { 'error' => "Can't resume session" }; #better error message
+    }
   }
 
   $signup_info->{'part_pkg'} = [];
@@ -159,7 +172,7 @@
   # delete $signup_info->{'part_pkg'};
   #}
 
-  if ( $session ) {
+  if ( exists $packet->{'session_id'} ) {
     my $agent_signup_info = { %$signup_info };
     delete $agent_signup_info->{agentnum2part_pkg};
     $agent_signup_info->{'agent'} = $session->{'agent'};



More information about the freeside-commits mailing list