• Модуль: webdav
  • Путь к файлу: ~/bitrix/modules/webdav/classes/iblock.php
  • Класс: CWebDavIblock
  • Вызов: CWebDavIblock::fileViewByUser
function fileViewByUser($id, array $misc = array())
{
	$id = (int)$id;
	$iblockId = $this->IBLOCK_ID;
	if(!empty($misc['IBLOCK_ID']))
	{
		$iblockId = $misc['IBLOCK_ID'];
	}
	$filter = array('IBLOCK_ID' => $iblockId, 'ID' => $id, 'CHECK_PERMISSIONS' => 'Y', 'SHOW_NEW' => 'Y');
	if ($this->permission < 'U')
	{
		$filter['SHOW_HISTORY'] = 'N';
	}

	$object = $this->GetObject(array('element_id' => $id, 'check_permissions' => false), false);
	if(!$this->CheckWebRights('',  array('action' => 'read', 'arElement' => $object), false))
	{
		return false;
	}

	$dbRows = CIBlockElement::GetList(array(), $filter,
		false, array('nTopCount' => 1), array('ID', 'NAME', 'TIMESTAMP_X', 'IBLOCK_ID', 'PROPERTY_' . $this->file_prop));
	if ($dbRows && $row = $dbRows->Fetch())
	{
		return CFile::ViewByUser($row['PROPERTY_FILE_VALUE'], array('content_type' => 'application/octet-stream', 'force_download' => true));
	}
	return false;
}