- Модуль: webdav
- Путь к файлу: ~/bitrix/modules/webdav/classes/general.php
- Класс: CWebDavBase
- Вызов: CWebDavBase::CheckIfHeader
function CheckIfHeader()
{
if (isset($_SERVER['HTTP_IF']))
{
$arUris = $this->_if_header_parser($_SERVER['HTTP_IF']);
foreach ($arUris as $uri => $conditions)
{
if ($uri == '')
{
$uri = $this->uri;
}
$state = true;
foreach ($conditions as $condition)
{
if (!strncmp($condition, '$/' . BX_UTF_PCRE_MODIFIER, $condition))
{
$this->ThrowError('423 Locked', 'WEBDAV_HEADER_TOCKEN', '', __FILE__.' '.__LINE__);
return false;
}
}
if (!$this->_check_uri_condition($uri, $condition))
{
$this->ThrowError('412 Precondition failed', 'WEBDAV_HEADER_URI', '', __FILE__.' '.__LINE__);
$state = false;
break;
}
}
if ($state == true)
{
return true;
}
}
return false;
}
return true;
}