Beispiel #1
0
if (!CModule::IncludeModule('voximplant')) {
    return;
}
$arResult['NUMBERS'] = CVoxImplantPhone::GetRentNumbers();
$arResult['PAID_BEFORE'] = array('TS' => 0, 'DATE' => '', 'PRICE' => 0, 'NOTICE' => false);
foreach ($arResult['NUMBERS'] as $value) {
    if ($arResult['PAID_BEFORE']['TS'] > $value['PAID_BEFORE_TS'] || $arResult['PAID_BEFORE']['TS'] == 0) {
        $arResult['PAID_BEFORE']['TS'] = $value['PAID_BEFORE_TS'];
        $arResult['PAID_BEFORE']['DATE'] = $value['PAID_BEFORE'];
        $arResult['PAID_BEFORE']['PRICE'] = $value['PRICE'];
    } else {
        if ($arResult['PAID_BEFORE']['TS'] == $value['PAID_BEFORE_TS']) {
            $arResult['PAID_BEFORE']['PRICE'] += $value['PRICE'];
        }
    }
}
$ViAccount = new CVoxImplantAccount();
$arResult['BALANCE_CURRENCY'] = $ViAccount->GetAccountCurrency();
if ($arResult['PAID_BEFORE']['TS'] > 0) {
    $data = new Bitrix\Main\Type\DateTime();
    if ($arResult['PAID_BEFORE']['TS'] <= $data->getTimestamp() + 604800) {
        $arResult['BALANCE'] = $ViAccount->GetAccountBalance(true);
        if ($arResult['BALANCE'] < $arResult['PAID_BEFORE']['PRICE']) {
            $arResult['PAID_BEFORE']['NOTICE'] = 'Y';
        }
    }
}
if (count($arResult['NUMBERS']) > 0 && !(isset($arParams['TEMPLATE_HIDE']) && $arParams['TEMPLATE_HIDE'] == 'Y')) {
    $this->IncludeComponentTemplate();
}
return $arResult;
Beispiel #2
0
CModule::IncludeModule('voximplant');
$aTabs = array(array("DIV" => "edit1", "TAB" => GetMessage("VI_TAB_SETTINGS"), "ICON" => "voximplant_config", "TITLE" => GetMessage("VI_TAB_TITLE_SETTINGS_2")));
$tabControl = new CAdminTabControl("tabControl", $aTabs);
$ViAccount = new CVoxImplantAccount();
$ViAccount->UpdateAccountInfo();
if ($ViAccount->GetError()->error) {
    $accountName = '-';
    $accountBalance = '-';
    if ($ViAccount->GetError()->code == 'LICENCE_ERROR') {
        $errorMessage = GetMessage('VI_ACCOUNT_ERROR_LICENSE');
    } else {
        $errorMessage = GetMessage('VI_ACCOUNT_ERROR');
    }
} else {
    $accountName = $ViAccount->GetAccountName();
    $accountBalance = $ViAccount->GetAccountBalance() . ' ' . $ViAccount->GetAccountCurrency();
    $errorMessage = '';
}
if (strlen($_POST['Update']) > 0 && check_bitrix_sessid()) {
    if (strlen($_POST['PUBLIC_URL']) > 0 && strlen($_POST['PUBLIC_URL']) < 12) {
        $errorMessage = GetMessage('VI_ACCOUNT_ERROR_PUBLIC');
    } else {
        if (strlen($_POST['Update']) > 0) {
            COption::SetOptionString("voximplant", "portal_url", $_POST['PUBLIC_URL']);
            COption::SetOptionString("voximplant", "debug", isset($_POST['DEBUG_MODE']));
            if (strlen($Update) > 0 && strlen($_REQUEST["back_url_settings"]) > 0) {
                LocalRedirect($_REQUEST["back_url_settings"]);
            } else {
                LocalRedirect($APPLICATION->GetCurPage() . "?mid=" . urlencode($mid) . "&lang=" . urlencode(LANGUAGE_ID) . "&back_url_settings=" . urlencode($_REQUEST["back_url_settings"]) . "&" . $tabControl->ActiveTabParam());
            }
        }
Beispiel #3
0
<?php

if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) {
    die;
}
$APPLICATION->SetAdditionalCSS("/bitrix/components/bitrix/voximplant.main/templates/.default/telephony.css");
use Bitrix\Voximplant as VI;
$ViAccount = new CVoxImplantAccount();
$amount = $ViAccount->GetAccountBalance(true);
$currency = $ViAccount->GetAccountCurrency();
$errorMessage = '';
if ($ViAccount->GetError()->error) {
    $amount = '';
    $currency = '';
    if ($ViAccount->GetError()->code == 'LICENCE_ERROR') {
        $errorMessage = GetMessage('VI_ERROR_LICENSE');
    } else {
        $errorMessage = GetMessage('VI_ERROR');
    }
}
function getBalance($amount)
{
    $amount = round(floatval($amount), 2);
    $amount = $amount . '';
    $str = '';
    $amountCount = strlen($amount);
    for ($i = 0; $i < $amountCount; $i++) {
        if ($amount[$i] == '.') {
            $str .= '<span class="tel-num tel-num-point">.</span>';
        } else {
            $str .= '<span class="tel-num tel-num-' . $amount[$i] . '">' . $amount[$i] . '</span>';
Beispiel #4
0
 public static function GetPhoneNumbers($country, $regionId, $type = self::PHONE_TYPE_FIXED)
 {
     $arResult = array();
     if (!in_array($type, array(self::PHONE_TYPE_FIXED, self::PHONE_TYPE_TOLLFREE, self::PHONE_TYPE_TOLLFREE804, self::PHONE_TYPE_MOBILE, self::PHONE_TYPE_MOSCOW495))) {
         return $arResult;
     }
     if ($country == 'RU' && $regionId == '15') {
         $type = 'MOSCOW495';
     }
     $arResult = array();
     $viAccount = new CVoxImplantAccount();
     $currency = $viAccount->GetAccountCurrency();
     $viHttp = new CVoxImplantHttp();
     $result = $viHttp->GetNewPhoneNumbers($type, $country, $regionId);
     if ($result && !empty($result->result)) {
         foreach ($result->result as $value) {
             $arResult[$value->phone_number] = array('FULL_PRICE' => floatval($value->phone_price) + floatval($value->can_list_phone_numbers), 'INSTALLATION_PRICE' => $value->can_list_phone_numbers, 'MONTH_PRICE' => $value->phone_price, 'PHONE_NUMBER' => $value->phone_number, 'COUNTRY_CODE' => $country, 'REGION_ID' => $regionId, 'CURRENCY' => $currency);
         }
     }
     return $arResult;
 }