• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/classes/mysql/sonet_relation.php
  • Класс: \CCrmSonetRelation
  • Вызов: CCrmSonetRelation::Register
public function Register($logEntityID, $logEventID, $entityTypeID, $entityID, $parentEntityTypeID, $parentEntityID, $typeID = CCrmSonetRelationType::Ownership, $level = 1)
{
	if(!CCrmOwnerType::IsDefined($entityTypeID) || !CCrmOwnerType::IsDefined($parentEntityTypeID))
	{
		return;
	}

	$logEntityID = intval($logEntityID);
	$entityID = intval($entityID);
	$parentEntityID = intval($parentEntityID);
	if($logEntityID <= 0 || $entityID <= 0 || $parentEntityID <= 0)
	{
		return;
	}

	if(!CCrmSonetRelationType::IsDefined($typeID))
	{
		$typeID = CCrmSonetRelationType::Ownership;
	}

	$level = intval($level);
	if($level <= 0)
	{
		$level = 1;
	}

	global $DB;
	$tableName = self::TABLE_NAME;

	$slEntityType = $DB->ForSql(CCrmLiveFeedEntity::GetByEntityTypeID($entityTypeID));
	$slParentEntityType = $DB->ForSql(CCrmLiveFeedEntity::GetByEntityTypeID($parentEntityTypeID));
	$logEventID = $DB->ForSql($logEventID);

	CTimeZone::Disable();
	$logLastUpdateTime = CCrmLiveFeed::GetLogEventLastUpdateTime($logEntityID, true);
	if($logLastUpdateTime !== '')
	{
		$logLastUpdateTime = $DB->CharToDateFunction($logLastUpdateTime, 'FULL');
	}
	CTimeZone::Enable();

	$insertSql = "INSERT INTO {$tableName}(SL_ID, SL_EVENT_ID, SL_ENTITY_TYPE, ENTITY_ID, SL_PARENT_ENTITY_TYPE, PARENT_ENTITY_ID, SL_LAST_UPDATED, TYPE_ID, LVL)
		VALUES({$logEntityID}, '{$logEventID}', '{$slEntityType}', {$entityID}, '{$slParentEntityType}', {$parentEntityID}, {$logLastUpdateTime}, {$typeID}, {$level})";
	$DB->Query($insertSql, false, 'File: '.__FILE__.'
Line: '.__LINE__); }