• Модуль: disk
  • Путь к файлу: ~/bitrix/modules/disk/lib/internals/diskcomponent.php
  • Класс: BitrixDiskInternalsDiskComponent
  • Вызов: DiskComponent::prepareParams
protected function prepareParams()
{
	parent::prepareParams();

	if(!empty($this->arParams['STORAGE']))
	{
		if(!($this->arParams['STORAGE'] instanceof Storage))
		{
			throw new ArgumentException('STORAGE must be instance of BitrixDiskStorage');
		}
	}
	elseif(!empty($this->arParams['STORAGE_ID']))
	{
		$this->arParams['STORAGE_ID'] = (int)$this->arParams['STORAGE_ID'];
	}
	else
	{
		if(empty($this->arParams['STORAGE_MODULE_ID']))
		{
			throw new ArgumentException('STORAGE_MODULE_ID required');
		}
		if(empty($this->arParams['STORAGE_ENTITY_TYPE']))
		{
			throw new ArgumentException('STORAGE_ENTITY_TYPE required');
		}
		if(!isset($this->arParams['STORAGE_ENTITY_ID']))
		{
			throw new ArgumentException('STORAGE_ENTITY_ID required');
		}
	}

	if(empty($this->arParams['PATH_TO_USER']))
	{
		$siteId = SITE_ID;
		$currentUser = $this->loadCurrentUserModel();
		$default = '/company/personal/user/#user_id#/';
		if($currentUser && $currentUser->isExtranetUser())
		{

			$siteId = CExtranet::getExtranetSiteID();
			$default = '/extranet/contacts/personal/user/#user_id#/';
		}

		$this->arParams['PATH_TO_USER'] = mb_strtolower(COption::getOptionString('intranet', 'path_user', $default, $siteId));
	}

	return $this;
}