- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/lib/httprequest.php
- Класс: BitrixMainHttpRequest
- Вызов: HttpRequest::prepareCookie
protected function prepareCookie(array $cookies)
{
static $cookiePrefix = null;
if ($cookiePrefix === null)
{
$cookiePrefix = ConfigOption::get("main", "cookie_name", "BITRIX_SM") . "_";
}
$cookiePrefixLength = mb_strlen($cookiePrefix);
$cookiesCrypter = new WebCookiesCrypter();
$cookiesNew = $cookiesToDecrypt = [];
foreach ($cookies as $name => $value)
{
if (mb_strpos($name, $cookiePrefix) !== 0)
{
continue;
}
$name = mb_substr($name, $cookiePrefixLength);
if (is_string($value) && $cookiesCrypter->shouldDecrypt($name, $value))
{
$cookiesToDecrypt[$name] = $value;
}
else
{
$cookiesNew[$name] = $value;
}
}
foreach ($cookiesToDecrypt as $name => $value)
{
$cookiesNew[$name] = $cookiesCrypter->decrypt($name, $value, $cookiesNew);
}
return $cookiesNew;
}