• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/urlrewriter.php
  • Класс: BitrixMainUrlRewriter
  • Вызов: UrlRewriter::update
static function update($siteId, $arFilter, $arFields)
{
	if (empty($siteId))
		throw new ArgumentNullException("siteId");

	$arUrlRewrite = static::loadRules($siteId);

	$arResultKeys = self::filterRules($arUrlRewrite, $arFilter);
	foreach ($arResultKeys as $key)
	{
		if (array_key_exists("CONDITION", $arFields))
			$arUrlRewrite[$key]["CONDITION"] = $arFields["CONDITION"];
		if (array_key_exists("RULE", $arFields))
			$arUrlRewrite[$key]["RULE"] = $arFields["RULE"];
		if (array_key_exists("ID", $arFields))
			$arUrlRewrite[$key]["ID"] = $arFields["ID"];
		if (array_key_exists("PATH", $arFields))
			$arUrlRewrite[$key]["PATH"] = $arFields["PATH"];
		if (array_key_exists("SORT", $arFields))
			$arUrlRewrite[$key]["SORT"] = intval($arFields["SORT"]);
	}

	uasort($arUrlRewrite, array('BitrixMainUrlRewriter', "recordsCompare"));

	static::saveRules($siteId, $arUrlRewrite);
	Application::resetAccelerator();
}