• Модуль: dav
  • Путь к файлу: ~/bitrix/modules/dav/classes/general/webdav.php
  • Класс: CDavWebDav
  • Вызов: CDavWebDav::HEADWrapper
protected function HEADWrapper()
{
	$request = $this->request;
	$response = $this->response;

	$status = false;

	if (method_exists($this, "HEAD"))
	{
		$status = $this->HEAD();
	}
	elseif (method_exists($this, "GET"))
	{
		ob_start();
		$arResult = array();
		$status = $this->GET($arResult);
		if (!isset($arResult['size']))
		{
			$arResult['size'] = ob_get_length();
		}
		ob_end_clean();
	}

	if (!isset($arResult['mimetype']))
	{
		$arResult['mimetype'] = "application/octet-stream";
	}

	$response->AddHeader("Content-type: ".$arResult["mimetype"]);

	if (isset($arResult['mtime']))
	{
		$response->AddHeader("Last-modified:" . gmdate("D, d M Y H:i:s ", $arResult['mtime']) . "GMT");
	}

	if (isset($arResult['size']))
	{
		$response->AddHeader("Content-length: " . $arResult['size']);
	}

	if ($status === true)
	{
		$status = "200 OK";
	}
	if ($status === false)
	{
		$status = "404 Not found";
	}

	$response->SetHttpStatus($status);
}