CCrmRestProxyBase::prepareWebDavIBlock

  1. Bitrix24 API (v. 23.675.0)
  2. crm
  3. CCrmRestProxyBase
  4. prepareWebDavIBlock
  • Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/classes/general/restservice.php
  • Класс: \CCrmRestProxyBase
  • Вызов: CCrmRestProxyBase::prepareWebDavIBlock
protected function prepareWebDavIBlock($settings = null)
{
	if($this->webdavIBlock !== null)
	{
		return $this->webdavIBlock;
	}

	if(!CModule::IncludeModule('webdav'))
	{
		throw new RestException('Could not load webdav module.');
	}

	if(!is_array($settings) || empty($settings))
	{
		$settings = $this->getWebDavSettings();
	}

	$iblockID = $settings['IBLOCK_ID'] ?? 0;
	if($iblockID <= 0)
	{
		throw new RestException('Could not find webdav iblock.');
	}

	$sectionId = $settings['IBLOCK_SECTION_ID'] ?? 0;
	if($sectionId <= 0)
	{
		throw new RestException('Could not find webdav section.');
	}

	$user = CCrmSecurityHelper::GetCurrentUser();
	$this->webdavIBlock = new CWebDavIblock(
		$iblockID,
		'',
		array(
			'ROOT_SECTION_ID' => $sectionId,
			'DOCUMENT_TYPE' => array('webdav', 'CIBlockDocumentWebdavSocnet', 'iblock_'.$sectionId.'_user_'.$user->GetID())
		)
	);

	return $this->webdavIBlock;
}

Добавить комментарий