Ejemplo n.º 1
0
 /**
  * replace all current groupmembers with the new groupmembers list
  *
  * @param int $_groupId
  * @param array $_groupMembers array of ids
  * @return unknown
  */
 public function setGroupMembers($_groupId, $_groupMembers)
 {
     $metaData = $this->_getMetaData($_groupId);
     $membersMetaDatas = $this->_getAccountsMetaData((array) $_groupMembers);
     $memberDn = $memberUid = array();
     foreach ($membersMetaDatas as $memberMetadata) {
         $memberDn[] = $memberMetadata['dn'];
         $memberUid[] = $memberMetadata['uid'];
     }
     if ($this->_options['useRfc2307bis']) {
         $this->_saveRfc2307GroupMembers($_groupId, $_groupMembers);
     } else {
         $data = array('memberuid' => $memberUid);
         if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) {
             Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ . '  $dn: ' . $metaData['dn']);
         }
         if (Tinebase_Core::isLogLevel(Zend_Log::DEBUG)) {
             Tinebase_Core::getLogger()->debug(__METHOD__ . '::' . __LINE__ . '  $data: ' . print_r($data, true));
         }
         $this->_ldap->updateProperty($metaData['dn'], $data);
     }
 }