/** * Returns a FolderID of default classes * this is for AS 1.0 compatibility: * this information was made available during GetHierarchy() * * @param string $class The class requested * * @access public * @return string * @throws NoHierarchyCacheAvailableException */ public function GetFolderIdFromCacheByClass($class) { $folderidforClass = false; // look at the default foldertype for this class $type = ZPush::getDefaultFolderTypeFromFolderClass($class); if ($type && $type > SYNC_FOLDER_TYPE_OTHER && $type < SYNC_FOLDER_TYPE_USER_MAIL) { $folderids = $this->device->GetAllFolderIds(); foreach ($folderids as $folderid) { if ($type == $this->device->GetFolderType($folderid)) { $folderidforClass = $folderid; break; } } // Old Palm Treos always do initial sync for calendar and contacts, even if they are not made available by the backend. // We need to fake these folderids, allowing a fake sync/ping, even if they are not supported by the backend // if the folderid would be available, they would already be returned in the above statement if ($folderidforClass == false && ($type == SYNC_FOLDER_TYPE_APPOINTMENT || $type == SYNC_FOLDER_TYPE_CONTACT)) { $folderidforClass = SYNC_FOLDER_TYPE_DUMMY; } } ZLog::Write(LOGLEVEL_DEBUG, sprintf("DeviceManager->GetFolderIdFromCacheByClass('%s'): '%s' => '%s'", $class, $type, $folderidforClass)); return $folderidforClass; }