• Модуль: webdav
  • Путь к файлу: ~/bitrix/modules/webdav/classes/diskstorage.php
  • Класс: CDiskStorage
  • Вызов: CDiskStorage::formatFolderToResponse
protected function formatFolderToResponse(Folder $folder, $markIsShared = false)
{
	if(empty($folder) || !$folder->getName())
	{
		return array();
	}

	$path = $this->getBreadcrumbs($folder);
	if(!$path)
	{
		return array();
	}

	$result = array(
		'id' => $this->generateId(array('FILE' => false, 'ID' => $folder->getId())),
		'isDirectory' => true,
		'isShared' => (bool)$markIsShared,
		'isSymlinkDirectory' => $folder instanceof BitrixDiskFolderLink,
		'isDeleted' => false,
		'storageId' => $this->getStringStorageId(),
		'path' => '/' . trim($path, '/'),
		'name' => (string)$folder->getName(),
		'version' => (string)$this->generateTimestamp($folder->getUpdateTime()->getTimestamp()),
		'extra' => array(
			'id' => (string)$folder->getId(),
			'iblockId' => (string)$folder->getStorageId(),
			'sectionId' => (string)$folder->getParentId(),
			'linkSectionId' => (string)($folder->isLink()? $folder->getRealObjectId() : ''),
			'rootSectionId' => (string)$this->storage->getRootObjectId(),
			'name' => (string)$folder->getName(),
		),
		'permission' => 'W',
		'createdBy' => (string)$folder->getCreatedBy(),
		'modifiedBy' => (string)$folder->getUpdatedBy(),
	);
	if($this->storage->getRootObjectId() != $folder->getParentId())
	{
		$result['parentId'] = $this->generateId(array('FILE' => false, 'ID' => $folder->getParentId()));
	}

	return $result;
}