- Модуль: search
- Путь к файлу: ~/bitrix/modules/search/classes/mysql/search.php
- Класс: CSearch
- Вызов: CSearch::UpdateSite
static function UpdateSite($ID, $arSITE_ID)
{
$DB = CDatabase::GetModuleConnection('search');
$ID = intval($ID);
if (!is_array($arSITE_ID))
{
$DB->Query("
DELETE FROM b_search_content_site
WHERE SEARCH_CONTENT_ID = ".$ID."
", false, "File: ".__FILE__."
Line: ".__LINE__);
}
else
{
$rsSite = $DB->Query("
SELECT SITE_ID, URL
FROM b_search_content_site
WHERE SEARCH_CONTENT_ID = ".$ID."
", false, "File: ".__FILE__."
Line: ".__LINE__);
while ($arSite = $rsSite->Fetch())
{
if (!array_key_exists($arSite["SITE_ID"], $arSITE_ID))
{
$DB->Query("
DELETE FROM b_search_content_site
WHERE SEARCH_CONTENT_ID = ".$ID."
AND SITE_ID = '".$DB->ForSql($arSite["SITE_ID"])."'
", false, "File: ".__FILE__."
Line: ".__LINE__);
}
else
{
if ($arSite["URL"] !== $arSITE_ID[$arSite["SITE_ID"]])
{
$DB->Query("
UPDATE b_search_content_site
SET URL = '".$DB->ForSql($arSITE_ID[$arSite["SITE_ID"]], 2000)."'
WHERE SEARCH_CONTENT_ID = ".$ID."
AND SITE_ID = '".$DB->ForSql($arSite["SITE_ID"])."'
", false, "File: ".__FILE__."
Line: ".__LINE__);
}
unset($arSITE_ID[$arSite["SITE_ID"]]);
}
}
foreach ($arSITE_ID as $site => $url)
{
$DB->Query("
REPLACE INTO b_search_content_site(SEARCH_CONTENT_ID, SITE_ID, URL)
VALUES(".$ID.", '".$DB->ForSql($site, 2)."', '".$DB->ForSql($url, 2000)."')
", false, "File: ".__FILE__."
Line: ".__LINE__);
}
}
}