function _cloneDocman($srcGroupId, $dstGroupId, $ugroupsMapping) { $user = $this->getUser(); // Clone Docman permissions $dPm = $this->_getPermissionsManager(); if ($ugroupsMapping === false) { $dPm->setDefaultDocmanPermissions($dstGroupId); } else { $dPm->cloneDocmanPermissions($srcGroupId, $dstGroupId); } // Clone Metadata definitions $metadataMapping = array(); $mdFactory = new Docman_MetadataFactory($srcGroupId); $mdFactory->cloneMetadata($dstGroupId, $metadataMapping); // Clone Items, Item's permissions and metadata values $itemFactory = $this->_getItemFactory(); $dataRoot = $this->getProperty('docman_root'); $itemMapping = $itemFactory->cloneItems($srcGroupId, $dstGroupId, $user, $metadataMapping, $ugroupsMapping, $dataRoot); // Clone reports $reportFactory = new Docman_ReportFactory($srcGroupId); $reportFactory->copy($dstGroupId, $metadataMapping, $user, false, $itemMapping); //@todo: verify that key for title for root is copied instead of // string }