• Модуль: webdav
  • Путь к файлу: ~/bitrix/modules/webdav/classes/iblockbizproc.php
  • Класс: CIBlockDocumentWebdav
  • Вызов: CIBlockDocumentWebdav::GetDocumentAdminPage
static function GetDocumentAdminPage($documentId)
{
	$documentId = intval($documentId);
	if ($documentId <= 0)
		throw new CBPArgumentNullException("documentId");

	$diskId = self::processGetDiskIdByDocId($documentId);
	if($diskId !== null)
	{
		return self::proxyToDisk(__FUNCTION__, array($diskId));
	}

	$db_res = CIBlockElement::GetList(
		array(),
		array("ID" => $documentId, "SHOW_NEW"=>"Y", "SHOW_HISTORY" => "Y"),
		false,
		false,
		array("ID", "CODE", "EXTERNAL_ID", "IBLOCK_ID", "IBLOCK_TYPE_ID", "IBLOCK_SECTION_ID"));
	if ($db_res && $arElement = $db_res->Fetch())
	{
		$db_res = CIBlock::GetList(array(), array("ID" => $arElement["IBLOCK_ID"], "SITE_ID" => SITE_ID, "CHECK_PERMISSIONS" => "N"));
		if ($db_res && $arIblock = $db_res->Fetch())
		{
			$arr = array(
				"LANG_DIR" => SITE_ID,
				"ID" => $documentId,
				"CODE" => $arElement["CODE"],
				"EXTERNAL_ID" => $arElement["EXTERNAL_ID"],
				"IBLOCK_TYPE_ID" => $arIblock["IBLOCK_TYPE_ID"],
				"IBLOCK_ID" => $arIblock["IBLOCK_ID"],
				"IBLOCK_CODE" => $arIblock["IBLOCK_CODE"],
				"IBLOCK_EXTERNAL_ID" => $arIblock["IBLOCK_EXTERNAL_ID"],
				"SECTION_ID" => $arElement["IBLOCK_SECTION_ID"]
				);
			return CIBlock::ReplaceDetailUrl($arIblock["DETAIL_PAGE_URL"], $arr, true, "E");
		}
	}
	return null;
}