• Модуль: imopenlines
  • Путь к файлу: ~/bitrix/modules/imopenlines/lib/queue/event.php
  • Класс: BitrixImOpenLinesQueueEvent
  • Вызов: Event::OnBeforeDepartmentsDelete
static function OnBeforeDepartmentsDelete($sectionId)
{
	if (Loader::includeModule('iblock'))
	{
		$idIblockStructure = QueueManager::getIdIblockStructure();

		if(!empty($idIblockStructure))
		{
			$res = SectionTable::getList([
				'filter' => [
					'=IBLOCK_ID' => $idIblockStructure,
					'=ID' => $sectionId
				]
			]);

			if($res->getSelectedRowsCount())
			{
				$lines = self::getLineIsDepartmentQueue([$sectionId]);

				if (!empty($lines))
				{
					self::$linesDepartmentsDelete[$sectionId] = $lines;
					foreach ($lines as $lineId)
					{
						$queueManager = new QueueManager($lineId);
						$queueManager->deleteItemsConfigQueue([['ENTITY_ID' => $sectionId, 'ENTITY_TYPE' => 'department']]);
					}
				}
			}
		}
	}
}