19 digit visa and discover cards
[freeside.git] / fs_selfservice / FS-SelfService / cgi / agent.cgi
old mode 100644 (file)
new mode 100755 (executable)
index 92c76f3..d5147d2
@@ -1,3 +1,4 @@
+#!/usr/bin/perl -T
 #!/usr/bin/perl -Tw
 
 #some false laziness w/selfservice.cgi
@@ -113,7 +114,7 @@ sub process_signup {
 
   my $error = '';
 
-  #some false laziness w/signup.cgi
+  #false laziness w/signup.cgi, identical except for agentnum vs session_id
   my $payby = $cgi->param('payby');
   if ( $payby eq 'CHEK' || $payby eq 'DCHK' ) {
     #$payinfo = join('@', map { $cgi->param( $payby. "_payinfo$_" ) } (1,2) );
@@ -149,7 +150,7 @@ sub process_signup {
     my $payinfo = $cgi->param('payinfo');
     $payinfo =~ s/\D//g;
 
-    $payinfo =~ /^(\d{13,16})$/
+    $payinfo =~ /^(\d{13,19}|\d{8,9})$/
       or $error ||= $init_data->{msgcat}{invalid_card}; #. $self->payinfo;
     $payinfo = $1;
     validate($payinfo)
@@ -161,17 +162,25 @@ sub process_signup {
   unless ( $error ) {
     my $rv = new_customer ( {
       'session_id'       => $session_id,
-      map { $_ => $cgi->param($_) }
+      map { $_ => scalar($cgi->param($_)) }
         qw( last first ss company
             address1 address2 city county state zip country
             daytime night fax
+
+            ship_last ship_first ship_company
+            ship_address1 ship_address2 ship_city ship_county ship_state
+              ship_zip ship_country
+            ship_daytime ship_night ship_fax
+
             payby payinfo paycvv paydate payname invoicing_list
+            referral_custnum promo_code reg_code
             pkgpart username sec_phrase _password popnum refnum
           ),
         grep { /^snarf_/ } $cgi->param
     } );
     $error = $rv->{'error'};
   }
+  #eslaf
 
   if ( $error ) { 
     $action = 'signup';
@@ -185,7 +194,7 @@ sub process_signup {
   } else {
     $action = 'agent_main';
     my $agent_info = agent_info( 'session_id' => $session_id );
-    $agent_info->{'message'} = 'Signup sucessful';
+    $agent_info->{'message'} = 'Signup successful';
     $agent_info;
   }
 
@@ -316,7 +325,7 @@ sub process_svc_acct {
     $action = 'agent_provision';
     return {
       %{agent_provision()},
-      'message' => $result->{'svc'}. ' setup sucessfully.',
+      'message' => $result->{'svc'}. ' setup successfully.',
     };
   }
 
@@ -335,7 +344,7 @@ sub process_svc_external {
     %{agent_provision()},
     'message' => $result->{'error'}
                    ? '<FONT COLOR="#FF0000">'. $result->{'error'}. '</FONT>'
-                   : $result->{'svc'}. ' setup sucessfully'.
+                   : $result->{'svc'}. ' setup successfully'.
                      ': serial number '.
                      sprintf('%010d', $result->{'id'}). '-'. $result->{'title'}
   };
@@ -395,7 +404,7 @@ sub process_order_pkg {
     #$cgi->delete( grep { $_ ne 'custnum' } $cgi->param );
     return {
       %{view_customer()},
-      'message' => 'Package order sucessful.',
+      'message' => 'Package order successful.',
     };
   }
 
@@ -409,7 +418,8 @@ sub do_template {
   #warn join(' / ', map { "$_=>".$fill_in->{$_} } keys %$fill_in). "\n";
 
   $cgi->delete_all();
-  $fill_in->{'selfurl'} = $cgi->self_url;
+  $fill_in->{'selfurl'} = $cgi->self_url; #OLD
+  $fill_in->{'self_url'} = $cgi->self_url;
   $fill_in->{'cgi'} = \$cgi;
 
   my $template = new Text::Template( TYPE    => 'FILE',