• Модуль: rest
  • Путь к файлу: ~/bitrix/modules/rest/lib/placement.php
  • Класс: BitrixRestPlacementTable
  • Вызов: PlacementTable::deleteByApp
static function deleteByApp($appId)
{
	PlacementLangTable::deleteByApp((int) $appId);
	$connection = MainApplication::getConnection();

	$res = static::getList(
		[
			'filter' => [
				'=APP_ID' => (int)$appId,
			],
			'select' => [
				'ID',
				'APP_ID',
				'PLACEMENT',
				'PLACEMENT_HANDLER',
				'ICON_ID',
				'ADDITIONAL',
				'OPTIONS',
			],
			'limit' => 1,
		]
	);
	$eventList = [];
	while ($placement = $res->fetch())
	{
		$eventList[] = new Event(
			'rest',
			static::PREFIX_EVENT_ON_AFTER_DELETE . $placement['PLACEMENT'],
			[
				'ID' => $placement['ID'],
				'PLACEMENT' => $placement['PLACEMENT'],
			]
		);
	}

	$queryResult = $connection->query("DELETE FROM ".static::getTableName()." WHERE APP_ID='".intval($appId)."'");

	foreach ($eventList as $event)
	{
		EventManager::getInstance()->send($event);
	}

	static::clearHandlerCache();

	return $queryResult;
}