]> git.donarmstrong.com Git - roundcube.git/blobdiff - program/steps/addressbook/copy.inc
Imported Upstream version 0.2~stable
[roundcube.git] / program / steps / addressbook / copy.inc
index e6d917e92bd651ea7f7b3895a83cdb74ba8b6300..268903bf53398c593630716745ae954805d60675 100644 (file)
@@ -23,12 +23,9 @@ $cid = get_input_value('_cid', RCUBE_INPUT_POST);
 $target = get_input_value('_to', RCUBE_INPUT_POST);
 if ($cid && preg_match('/^[a-z0-9\-_=]+(,[a-z0-9\-_=]+)*$/i', $cid) && strlen($target) && $target != $source)
 {
-  if ($target != '0')
-    $TARGET = new rcube_ldap($CONFIG['ldap_public'][$target]);
-  else
-    $TARGET = new rcube_contacts($DB, $_SESSION['user_id']);
-    
-  $success = false;  
+  $success = false;
+  $TARGET = $RCMAIL->get_address_book($target);
+
   if ($TARGET && $TARGET->ready && !$TARGET->readonly)
     $success = $TARGET->insert($CONTACTS->search($CONTACTS->primary_key, $cid), true);
 
@@ -36,8 +33,11 @@ if ($cid && preg_match('/^[a-z0-9\-_=]+(,[a-z0-9\-_=]+)*$/i', $cid) && strlen($t
     $OUTPUT->show_message('copyerror', 'error');
   else
     $OUTPUT->show_message('copysuccess', 'notice', array('nr' => count($success)));
+    
+  // close connection to second address directory
+  $TARGET->close();
 }
-  
+
 // send response
 $OUTPUT->send();