RT# 82949 - changes section name from fees to pricing, better opiton
[freeside.git] / httemplate / edit / process / cust_main.cgi
index 354e22e..baacd5e 100755 (executable)
@@ -18,7 +18,7 @@
 <% $cgi->redirect( -uri    => popurl(3). "view/cust_main.cgi?". $new->custnum,
                    -cookie => CGI::Cookie->new(
                      -name    => 'freeside_status',
-                     -value   => mt('Customer edited'),
+                     -value   => mt($freeside_status),
                      -expires => '+5m',
                    ),
    )
@@ -97,6 +97,11 @@ my $new = new FS::cust_main ( {
   (map { ( "ship_$_", '' ) } (FS::cust_main->location_fields))
 } );
 
+# add any virtual fields to the new cust_main record
+foreach ($new->virtual_fields) {
+  $new->setfield($_, scalar($cgi->param($_)));
+}
+
 warn Dumper( $new ) if $DEBUG > 1;
 
 if ( $duplicate_of ) {
@@ -187,7 +192,7 @@ if ( $cgi->param('residential_commercial') eq 'Residential' ) {
     $error = 'Email address required';
   }
 
-  $options{'invoicing_list'} = [ split(/\s*,\s*/, $email) ];
+  $options{'invoicing_list'} = [ split(/[,\s]+/, $email) ];
   # XXX really should include the phone numbers in here also
 
 } else {
@@ -220,8 +225,11 @@ if ( $vendor eq 'avalara' or $vendor eq 'suretax' ) {
 }
 
 #perhaps this stuff should go to cust_main.pm
+my $freeside_status = '';
 if ( $new->custnum eq '' or $duplicate_of ) {
 
+  $freeside_status = 'Customer added';
+
   my $cust_pkg = '';
   my $svc;
 
@@ -343,6 +351,8 @@ if ( $new->custnum eq '' or $duplicate_of ) {
   
 } else { #create old record object
 
+  $freeside_status = 'Customer edited';
+
   my $old = qsearchs( 'cust_main', { 'custnum' => $new->custnum } ); 
   $error ||= "Old record not found!" unless $old;