• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/integration/rest/appplacementmanager.php
  • Класс: Bitrix\Crm\Integration\Rest\AppPlacementManager
  • Вызов: AppPlacementManager::deleteAllHandlersForType
static function deleteAllHandlersForType(int $entityTypeId): Result
{
	if (!Main\Loader::includeModule('rest'))
	{
		return new Result();
	}

	$placementCodes = static::getAllPlacementCodesForType($entityTypeId);
	if (empty($placementCodes))
	{
		return new Result();
	}

	$placementsGetListResult = Rest\PlacementTable::getList([
		'select' => ['ID'],
		'filter' => [
			'@PLACEMENT' => $placementCodes,
		],
	]);

	$result = new Result();
	while ($entityObject = $placementsGetListResult->fetchObject())
	{
		$deleteResult = $entityObject->delete();
		if (!$deleteResult->isSuccess())
		{
			$result->addErrors($deleteResult->getErrors());
		}
	}

	return $result;
}