- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/lib/composite/engine.php
- Класс: BitrixMainCompositeEngine
- Вызов: Engine::onBeforeLocalRedirect
static function onBeforeLocalRedirect(&$url, $skip_security_check, $isExternal)
{
if (!self::isAjaxRequest() || ($isExternal && $skip_security_check !== true))
{
return;
}
$response = array(
"error" => true,
"reason" => "redirect",
"redirect_url" => $url,
);
self::setEnable(false);
Logger::log(
array(
"TYPE" => Logger::TYPE_LOCAL_REDIRECT,
"MESSAGE" =>
"Script: ".
($_SERVER["REAL_FILE_PATH"] ?? $_SERVER["SCRIPT_NAME"])."n".
"Redirect Url: ".$url
)
);
self::$isRedirect = true;
Page::getInstance()->delete();
$response = new ResponseJson($response);
$response->addHeader('X-Bitrix-Composite', 'Ajax (error:redirect)');
$bxRandom = Helper::getAjaxRandom();
if ($bxRandom !== false)
{
$response->addHeader('BX-RAND', $bxRandom);
}
Application::getInstance()->end(0, $response);
}