• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/timeline/entity/timelinebinding.php
  • Класс: Bitrix\Crm\Timeline\Entity\TimelineBindingTable
  • Вызов: TimelineBindingTable::deleteByOwner
static function deleteByOwner($ownerID)
{
	if(!is_int($ownerID))
	{
		$ownerID = (int)$ownerID;
	}

	if($ownerID <= 0)
	{
		throw new Main\ArgumentException('Owner ID must be greater than zero.', 'ownerID');
	}

	$affectedBindings =
		self::query()
			->setSelect([
				'ENTITY_TYPE_ID',
				'ENTITY_ID',
			])
			->where('OWNER_ID', $ownerID)
			->fetchCollection()
	;

	Main\Application::getConnection()->queryExecute("DELETE from b_crm_timeline_bind WHERE OWNER_ID = {$ownerID}");

	$monitor = Monitor::getInstance();
	foreach ($affectedBindings as $binding)
	{
		if (\CCrmOwnerType::IsDefined($binding->getEntityTypeId()) && $binding->getEntityId() > 0)
		{
			$monitor->onTimelineEntryRemoveIfSuitable(new ItemIdentifier($binding->getEntityTypeId(), $binding->getEntityId()), (int)$ownerID);
		}
	}

	self::cleanCache();
}