planet telesis invoice fixups RT 8707,8406
[freeside.git] / FS / FS / part_export / communigate_pro.pm
index edfd4b1..3ac0dfd 100644 (file)
@@ -383,12 +383,16 @@ sub _export_replace_svc_acct {
 sub _export_replace_svc_domain {
   my( $self, $new, $old ) = (shift, shift, shift);
 
+  #let's just do the rename part realtime rather than trying to queue
+  #w/dependencies.  we don't want FS winding up out-of-sync with the wrong
+  #username and a queued job anyway.  right??
   if ( $old->domain ne $new->domain ) {
-    my $error = $self->communigate_pro_queue( $new->svcnum, 'RenameDomain',
-      $old->domain, $new->domain,
-    );
-    return $error if $error;
+    eval { $self->communigate_pro_runcommand(
+             'RenameDomain', $old->domain, $new->domain,
+         ) };
+    return $@ if $@;
   }
+
   my %settings = ();
   $settings{'AccountsLimit'} = $new->max_accounts
     if $old->max_accounts ne $new->max_accounts;
@@ -831,6 +835,23 @@ sub export_getsettings_svc_acct {
 
 }
 
+sub export_getsettings_svc_forward {
+  my($self, $svc_forward, $settingsref, $defaultref ) = @_;
+
+  my $dest = eval { $self->communigate_pro_runcommand(
+    'GetForwarder',
+    ($svc_forward->src || $svc_forward->srcsvc_acct->email),
+  ) };
+  return $@ if $@;
+
+  my $settings = { 'Destination' => $dest };
+
+  %{$settingsref} = %$settings;
+  %{$defaultref} = ();
+
+  '';
+}
+
 sub _rule2string {
   my $rule = shift;
   my($priority, $name, $conditions, $actions, $comment) = @$rule;