• Модуль: 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;
}