• Модуль: voximplant
  • Путь к файлу: ~/bitrix/modules/voximplant/lib/controller/urlmanager.php
  • Класс: BitrixVoximplantControllerUrlManager
  • Вызов: UrlManager::getBillingUrlAction
public function getBillingUrlAction()
{
	$canTopUp = BitrixVoximplantSecurityHelper::canUpdateBalance();
	if (!$canTopUp)
	{
		$this->addError(new Error("Permission denied", "permission_denied"));
		return null;
	}

	if (!Limits::canManageTelephony())
	{
		$this->addError(new Error(Loc::getMessage("VOX_URLMANAGER_PAID_PLAN_REQUIRED"), "paid_plan_required"));
		return null;
	}

	$apiClient = new CVoxImplantHttp();
	$result = $apiClient->getBillingUrl();

	if(isset($result['error']))
	{
		$this->addError(new Error($result['error']['msg'], $result['error']['code']));
		return null;
	}

	$consentRequired = $result['consentRequired'];

	$isDemo = Loader::includeModule('bitrix24') && CBitrix24::IsDemoLicense();

	return [
		'billingUrl' => $result['billingUrl'],
		'disclaimerText' => $consentRequired ? CVoxImplantMain::GetTOS() : '',
		'demoWarningTitle' => $isDemo ? CVoxImplantMain::GetDemoTopUpWarningTitle() : '',
		'demoWarning' => $isDemo ? CVoxImplantMain::GetDemoTopUpWarning() : '',
	];
}