Commit 85cf6f6c authored by Sebastian Kummer's avatar Sebastian Kummer

Merge branch 'bugfix/ZP-895-integer-ids-can-trigger-name-switches' of...

Merge branch 'bugfix/ZP-895-integer-ids-can-trigger-name-switches' of https://stash.z-hub.io/scm/zp/z-push into feature/ZP-556-having-access-to-the-public-folder
parents e69fecdb 3e9eb346
...@@ -507,9 +507,7 @@ class ImportChangesICS implements IImportChanges { ...@@ -507,9 +507,7 @@ class ImportChangesICS implements IImportChanges {
} }
// yeah OL sucks - ZP-779 // yeah OL sucks - ZP-779
else { else {
if (ctype_digit($fsk)) { $fsk = ZPush::GetDeviceManager()->GetBackendIdForFolderId($fsk);
$fsk = ZPush::GetDeviceManager()->GetBackendIdForFolderId($fsk);
}
$store = ZPush::GetBackend()->GetMAPIStoreForFolderId(ZPush::GetAdditionalSyncFolderStore($fsk), $fsk); $store = ZPush::GetBackend()->GetMAPIStoreForFolderId(ZPush::GetAdditionalSyncFolderStore($fsk), $fsk);
$entryid = mapi_msgstore_entryidfromsourcekey($store, hex2bin($fsk), hex2bin($sk)); $entryid = mapi_msgstore_entryidfromsourcekey($store, hex2bin($fsk), hex2bin($sk));
$realMessage = mapi_msgstore_openentry($store, $entryid); $realMessage = mapi_msgstore_openentry($store, $entryid);
......
...@@ -888,7 +888,7 @@ class MAPIProvider { ...@@ -888,7 +888,7 @@ class MAPIProvider {
} }
$folder->BackendId = bin2hex($folderprops[PR_SOURCE_KEY]); $folder->BackendId = bin2hex($folderprops[PR_SOURCE_KEY]);
$folder->serverid = ZPush::GetDeviceManager()->GetFolderIdForBackendId($folder->BackendId, true, DeviceManager::FLD_ORIGIN_USER, $folder->displayname); $folder->serverid = ZPush::GetDeviceManager()->GetFolderIdForBackendId($folder->BackendId, true, DeviceManager::FLD_ORIGIN_USER, $folderprops[PR_DISPLAY_NAME]);
if($folderprops[PR_PARENT_ENTRYID] == $storeprops[PR_IPM_SUBTREE_ENTRYID]) { if($folderprops[PR_PARENT_ENTRYID] == $storeprops[PR_IPM_SUBTREE_ENTRYID]) {
$folder->parentid = "0"; $folder->parentid = "0";
} }
......
...@@ -698,9 +698,6 @@ class ASDevice extends StateObject { ...@@ -698,9 +698,6 @@ class ASDevice extends StateObject {
// nothing found? Then it's a new one, get and add it // nothing found? Then it's a new one, get and add it
if (is_array($this->backend2folderidCache) && $generateNewIdIfNew) { if (is_array($this->backend2folderidCache) && $generateNewIdIfNew) {
if (!in_array($folderOrigin, array(DeviceManager::FLD_ORIGIN_CONFIG, DeviceManager::FLD_ORIGIN_GAB, DeviceManager::FLD_ORIGIN_SHARED, DeviceManager::FLD_ORIGIN_USER))) {
ZLog::Write(LOGLEVEL_WARN, sprintf("ASDevice->GetFolderIdForBackendId(): folder type '%' is unknown in DeviceManager", $folderOrigin));
}
if ($folderName == null) { if ($folderName == null) {
ZLog::Write(LOGLEVEL_INFO, "ASDevice->GetFolderIdForBackendId(): generating a new folder id for the folder without a name"); ZLog::Write(LOGLEVEL_INFO, "ASDevice->GetFolderIdForBackendId(): generating a new folder id for the folder without a name");
} }
......
...@@ -874,7 +874,7 @@ class DeviceManager { ...@@ -874,7 +874,7 @@ class DeviceManager {
ZLog::Write(LOGLEVEL_DEBUG, sprintf("DeviceManager->GetBackendIdForFolderId(): no backend-folderid available for '%s', returning as is.", $folderid)); ZLog::Write(LOGLEVEL_DEBUG, sprintf("DeviceManager->GetBackendIdForFolderId(): no backend-folderid available for '%s', returning as is.", $folderid));
return $folderid; return $folderid;
} }
ZLog::Write(LOGLEVEL_DEBUG, sprintf("DeviceManager->GetBackendIdForFolderId(): folderid %d => %s", $folderid, $backendId)); ZLog::Write(LOGLEVEL_DEBUG, sprintf("DeviceManager->GetBackendIdForFolderId(): folderid %s => %s", $folderid, $backendId));
return $backendId; return $backendId;
} }
...@@ -884,7 +884,7 @@ class DeviceManager { ...@@ -884,7 +884,7 @@ class DeviceManager {
* *
* @param string $backendid Backend folder id * @param string $backendid Backend folder id
* @param boolean $generateNewIdIfNew Generates a new AS folderid for the case the backend folder is not known yet, default: false. * @param boolean $generateNewIdIfNew Generates a new AS folderid for the case the backend folder is not known yet, default: false.
* @param string $folderType Folder type is one of 'U' (user) * @param string $folderOrigin Folder type is one of 'U' (user)
* 'C' (configured) * 'C' (configured)
* 'S' (shared) * 'S' (shared)
* 'G' (global address book) * 'G' (global address book)
...@@ -893,8 +893,11 @@ class DeviceManager { ...@@ -893,8 +893,11 @@ class DeviceManager {
* @access public * @access public
* @return string/boolean returns false if there is folderid known for this backendid and $generateNewIdIfNew is not set or false. * @return string/boolean returns false if there is folderid known for this backendid and $generateNewIdIfNew is not set or false.
*/ */
public function GetFolderIdForBackendId($backendid, $generateNewIdIfNew = false, $folderType = self::FLD_ORIGIN_USER, $folderName = null) { public function GetFolderIdForBackendId($backendid, $generateNewIdIfNew = false, $folderOrigin = self::FLD_ORIGIN_USER, $folderName = null) {
return $this->device->GetFolderIdForBackendId($backendid, $generateNewIdIfNew, $folderType, $folderName); if (!in_array($folderOrigin, array(DeviceManager::FLD_ORIGIN_CONFIG, DeviceManager::FLD_ORIGIN_GAB, DeviceManager::FLD_ORIGIN_SHARED, DeviceManager::FLD_ORIGIN_USER))) {
ZLog::Write(LOGLEVEL_WARN, sprintf("ASDevice->GetFolderIdForBackendId(): folder type '%' is unknown in DeviceManager", $folderOrigin));
}
return $this->device->GetFolderIdForBackendId($backendid, $generateNewIdIfNew, $folderOrigin, $folderName);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment