• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/rating_rules.php
  • Класс: CAllRatingRulesMain
  • Вызов: CAllRatingRulesMain::changeUF
static function changeUF($arConfigs)
{
	global $DB;
	$err_mess = "File: ".__FILE__."
Function: changeUF
Line: "; $ruleId = intval(IntVal($arConfigs['ID'])); $entityTypeId = $DB->ForSql($arConfigs['ENTITY_TYPE_ID']); $userFieldId = $DB->ForSql($arConfigs['ACTION_CONFIG']['CHANGE_UF']['UF_ID']); $userFieldValue = $DB->ForSql($arConfigs['ACTION_CONFIG']['CHANGE_UF']['UF_VALUE']); if (!empty($userFieldId)) { $strSql = "UPDATE b_uts_user uts SET uts.$userFieldId = '$userFieldValue' WHERE uts.VALUE_ID IN ( SELECT prv.ENTITY_ID FROM b_rating_rule_vetting prv WHERE prv.RULE_ID = $ruleId AND prv.ENTITY_TYPE_ID = '$entityTypeId' AND prv.APPLIED = 'N' )"; $DB->Query($strSql, false, $err_mess.__LINE__); $strSql = "INSERT INTO b_uts_user (VALUE_ID, $userFieldId) SELECT prv.ENTITY_ID, '$userFieldValue' as UF_VALUE FROM b_rating_rule_vetting prv WHERE prv.RULE_ID = $ruleId and prv.ENTITY_TYPE_ID = '$entityTypeId' and prv.ENTITY_ID NOT IN ( SELECT uf.VALUE_ID FROM b_uts_user uf ) and prv.APPLIED = 'N' GROUP BY ENTITY_ID "; $DB->Query($strSql, false, $err_mess.__LINE__); } CRatingRule::ApplyVetting($arConfigs); return true; }