public static function GetPhoneCategories() { $arResult = array(); $viAccount = new CVoxImplantAccount(); $currency = $viAccount->GetAccountCurrency(); $viHttp = new CVoxImplantHttp(); $result = $viHttp->GetPhoneNumberCategories(); if ($result && !empty($result->result)) { foreach ($result->result as $value) { $categories = array(); $countryName = GetMessage('VI_PHONE_CODE_' . $value->country_code); if (strlen($countryName) <= 0) { $countryName = $value->country_code . ' (+' . $value->phone_prefix . ')'; } foreach ($value->phone_categories as $category) { $categories[$category->phone_category_name] = array('PHONE_TYPE' => $category->phone_category_name, 'COUNTRY_HAS_STATES' => $category->country_has_states, 'FULL_PRICE' => floatval($category->phone_price) + floatval($category->phone_installation_price), 'INSTALLATION_PRICE' => $category->phone_installation_price, 'MONTH_PRICE' => $category->phone_price, 'CURRENCY' => $currency); } $arResult[$value->country_code] = array('CAN_LIST_PHONES' => $value->can_list_phone_numbers, 'COUNTRY_NAME' => $countryName, 'COUNTRY_CODE' => $value->country_code, 'CATEGORIES' => $categories); } } return $arResult; }