- Модуль: imconnector
- Путь к файлу: ~/bitrix/modules/imconnector/lib/status.php
- Класс: BitrixImConnectorStatus
- Вызов: Status::deleteLinesExcept
static function deleteLinesExcept(string $connector, int $lineToKeep): bool
{
if (!empty(self::$instance[$connector]) && is_array(self::$instance[$connector]))
{
foreach (self::$instance[$connector] as $lineId => $lines)
{
if ($lineId != $lineToKeep)
{
unset(self::$instance[$connector][$lineId]);
}
}
}
$result = true;
$raw = StatusConnectorsTable::getList([
'select' => ['ID', 'LINE'],
'filter' => [
'!=LINE' => $lineToKeep,
'=CONNECTOR' => $connector
]
]);
while ($row = $raw->fetch())
{
$deleteResult = StatusConnectorsTable::delete($row['ID']);
if (!$deleteResult->isSuccess())
{
$result = false;
}
$dataEvent = [
'connector' => $connector,
'line' => $row['LINE'],
];
$event = new Event(Library::MODULE_ID, Library::EVENT_STATUS_DELETE, $dataEvent);
$event->send();
}
return $result;
}