• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/rating_rule.php
  • Класс: CRatingRule
  • Вызов: CRatingRule::Apply
static function Apply($ID)
{
	global $DB;

	$ID = intval($ID);
	$err_mess = (CRatingRule::err_mess())."
Function: Apply
Line: "; $ratingRule = CRatingRule::GetByID($ID); $arConfigs = $ratingRule->Fetch(); if ($arConfigs['ACTIVE'] == 'Y') { $arConfigs['CONDITION_CONFIG'] = unserialize(htmlspecialcharsback($arConfigs['CONDITION_CONFIG']), ['allowed_classes' => false]); $arConfigs['ACTION_CONFIG'] = unserialize(htmlspecialcharsback($arConfigs['ACTION_CONFIG']), ['allowed_classes' => false]); $arConfigs['CONDITION_MODULE'] = isset($arConfigs['CONDITION_MODULE']) && $arConfigs['CONDITION_MODULE'] <> ''? $arConfigs['CONDITION_MODULE']: 'main'; if(CModule::IncludeModule(mb_strtolower($arConfigs['CONDITION_MODULE']))) { if (method_exists($arConfigs['CONDITION_CLASS'], $arConfigs['CONDITION_METHOD'])) call_user_func(array($arConfigs['CONDITION_CLASS'], $arConfigs['CONDITION_METHOD']), $arConfigs); $DB->Query("DELETE FROM b_rating_rule_vetting WHERE RULE_ID = $ID AND APPLIED = 'Y'", false, $err_mess.__LINE__); } if (method_exists($arConfigs['ACTIVATE_CLASS'], $arConfigs['ACTIVATE_METHOD'])) call_user_func(array($arConfigs['ACTIVATE_CLASS'], $arConfigs['ACTIVATE_METHOD']), $arConfigs); $DB->Query("UPDATE b_rating_rule SET LAST_APPLIED = ".$DB->GetNowFunction()." WHERE ID = $ID", false, $err_mess.__LINE__); } return "CRatingRule::Apply($ID);"; }