export svc_mailinglist to CGP groups, RT#7514
[freeside.git] / FS / FS / part_export / domain_sql.pm
index 3dcb7a2..0ce1b16 100644 (file)
@@ -25,13 +25,13 @@ tie my %options, 'Tie::IxHash',
   'primary_key'        => { label => 'Database primary key' },
 ;
 
-tie my %postfix_transport_map, 
+tie my %postfix_transport_map, 'Tie::IxHash', 
   'domain' => 'domain'
 ;
 my $postfix_transport_map = 
   join('\n', map "$_ $postfix_transport_map{$_}",
                  keys %postfix_transport_map      );
-tie my %postfix_transport_static,
+tie my %postfix_transport_static, 'Tie::IxHash',
   'transport' => 'virtual:',
 ;
 my $postfix_transport_static = 
@@ -74,8 +74,13 @@ sub _export_insert {
   my %schema = $self->_schema_map;
   my %static = $self->_static_map;
 
-  my %record = ( map { $_ => $static{$_}       } keys %static ),
-               ( map { $_ => $svc_domain->$_() } keys %schema );
+  my %record = ( ( map { $_ => $static{$_}       } keys %static ),
+                 ( map { my $method = $schema{$_};
+                      $_ => $svc_domain->$method();
+                      }
+                      keys %schema
+                )
+              );
 
   my $err_or_queue = 
     $self->domain_sql_queue(
@@ -106,8 +111,13 @@ sub _export_replace {
     push @primary_key, $old->$keymap();
   }
 
-  my %record = ( map { $_ => $static{$_}       } keys %static ),
-               ( map { $_ => $svc_domain->$_() } keys %schema );
+  my %record = ( ( map { $_ => $static{$_}       } keys %static ),
+                 ( map { my $method = $schema{$_};
+                        $_ => $new->$method();
+                      }
+                      keys %schema
+                )
+              );
 
   my $err_or_queue = $self->domain_sql_queue(
     $new->svcnum,