• Модуль: controller
  • Путь к файлу: ~/bitrix/modules/controller/classes/general/controllermember.php
  • Класс: CAllControllerMember
  • Вызов: CAllControllerMember::logChanges
static function logChanges($CONTROLLER_MEMBER_ID, $arFieldsOld, $arFieldsNew, $strNote)
{
	global $DB, $USER;
	static $arFieldsToLog = array("CONTROLLER_GROUP_ID", "SITE_ACTIVE", "NAME", "ACTIVE");

	if(is_object($USER))
		$USER_ID = $USER->GetID();
	else
		$USER_ID = 1;

	foreach($arFieldsToLog as $FIELD)
	{
		if(
			isset($arFieldsOld[$FIELD])
			&& isset($arFieldsNew[$FIELD])
			&& $arFieldsOld[$FIELD] != $arFieldsNew[$FIELD]
		)
			$DB->Add("b_controller_member_log", array(
				"CONTROLLER_MEMBER_ID" => $CONTROLLER_MEMBER_ID,
				"USER_ID" => $USER_ID,
				"~CREATED_DATE" => $DB->CurrentTimeFunction(),
				"FIELD" => $FIELD,
				"FROM_VALUE" => $arFieldsOld[$FIELD],
				"TO_VALUE" => $arFieldsNew[$FIELD],
				"NOTES" => $strNote,
			), array("FROM_VALUE", "TO_VALUE", "NOTES"));
	}
}