• Модуль: voximplant
  • Путь к файлу: ~/bitrix/modules/voximplant/lib/controller/subscription.php
  • Класс: BitrixVoximplantControllerSubscription
  • Вызов: Subscription::cancelDisconnectAction
public function cancelDisconnectAction($number)
{
	if (!Permissions::createWithCurrentUser()->canModifyLines())
	{
		$this->addError(new Error("Permission denied", "permission_denied"));
		return null;
	}

	$row = NumberTable::getRow([
		'filter' => [
			'=NUMBER' => $number
		]
	]);

	if(!$row)
	{
		$this->errorCollection[] = new Error(Loc::getMessage("VOX_SUBSCRIPTION_NUMBER_NOT_FOUND"), "not_found");
		return null;
	}

	$subscriptionId = $row["SUBSCRIPTION_ID"];

	$viHttp = new CVoxImplantHttp();
	$result = $viHttp->CancelDeactivateSubscription($subscriptionId);
	if (!$result)
	{
		$this->errorCollection[] = new Error($viHttp->GetError()->msg);
		return null;
	}

	$cursor = NumberTable::getList([
		'select' => ['ID'],
		'filter' => [
			'=SUBSCRIPTION_ID' => $subscriptionId
		]
	]);

	while ($row = $cursor->fetch())
	{
		NumberTable::update($row['ID'], [
			'TO_DELETE' => 'N',
			'DATE_DELETE' => null
		]);
	}
}