• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/tracking/rest.php
  • Класс: Bitrix\Crm\Tracking\Rest
  • Вызов: Rest::deleteTrace
static function deleteTrace($query, $nav = 0, \CRestServer $server)
{
	$id = empty($query['id']) ? null : (int) $query['id'];
	if (!$id)
	{
		self::printErrors(["Parameter `id` required."]);
	}

	$rows = Internals\TraceEntityTable::getList([
		'filter' => ['=TRACE_ID' => $id]
	])->fetchAll();
	$hasRights = true;
	foreach ($rows as $row)
	{
		if (!\CCrmAuthorizationHelper::CheckUpdatePermission($row['ENTITY_TYPE_ID'], $row['ENTITY_ID']))
		{
			$hasRights = false;
			continue;
		}

		Internals\TraceEntityTable::delete($row['ID']);
	}

	if ($hasRights)
	{
		Internals\TraceTable::delete($id);
	}
}