}
        }
    }
    $DB->PrepareFields("b_adv_contract");
}
$arrSites = array();
$rs = CSite::GetList($by = "sort", $order = "asc");
while ($ar = $rs->Fetch()) {
    $arrSites[$ar["ID"]] = $ar;
}
$rsContract = CAdvContract::GetByID($ID);
$arrKEYWORDS = null;
if (!$rsContract || !$rsContract->ExtractFields()) {
    if (!$isAdmin && !$isDemo) {
        require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_after.php";
        echo CAdminMessage::ShowError(GetMessage("AD_ERROR_INCORRECT_CONTRACT_ID"));
        require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/epilog_admin.php";
        die;
    }
    $ID = 0;
    $str_WEIGHT = 100;
    $str_ACTIVE = "Y";
    $str_SORT = CAdvContract::GetNextSort();
    $str_DATE_SHOW_FROM = GetTime(time());
    $str_DEFAULT_STATUS_SID = "READY";
    $arrSITE = array_keys($arrSites);
} else {
    if (strlen($strError) <= 0) {
        if (strlen($str_KEYWORDS) > 0) {
            $arrKEYWORDS = preg_split('/[\\n\\r]+/', $str_KEYWORDS);
            TrimArr($arrKEYWORDS);