• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/short_uri.php
  • Класс: CBXAllShortUri
  • Вызов: CBXAllShortUri::GetShortUri
static function GetShortUri($uri)
{
	$uriCrc32 = self::Crc32($uri);

	$dbResult = CBXShortUri::GetList(array(), array("URI_CRC" => $uriCrc32));
	while ($arResult = $dbResult->Fetch())
	{
		if ($arResult["URI"] == $uri)
			return "/".$arResult["SHORT_URI"];
	}

	$arFields = array(
		"URI" => $uri,
		"SHORT_URI" => self::GenerateShortUri(),
		"STATUS" => 301,
	);

	$id = CBXShortUri::Add($arFields);

	if ($id)
		return "/".$arFields["SHORT_URI"];

	return "";
}