\BXmaker\GeoIP\Service\Base
-
abstract namespace BXmaker\GeoIP\Service;
class Base
{
//...
}
public function __construct(array $arParams = []);
Имеет ли локальную базу данных
/**
* @return false
*/
public static function canUseLocalDatabase();
Может ли запрос быть инициирован на клиентской стороне
/**
* @return false
*/
public static function canUseOnClient();
Может ли запрос быть инициирован на серверной стороне
/**
* @return bool
*/
public static function canUseOnServer();
Разберет JSON и вернет данные в нужной кодировке
/**
* @param string $json
* @return mixed
* @throws \Bitrix\Main\ArgumentException
*/
protected function fromJson(string $json);
Преобразует данные в нужную кодировку из UTF-8 и вернет
/**
* @param string|array $data
* @return string|array
*/
protected function fromUtf8($data);
Вернет данные для клиентской стороны, которые позволят загрузить расширение и определить геолокацию
/**
* @return array
*/
public function getClientData($arParams = []);
Вернет уникальный код сервиса
/**
* @return string
*/
public static abstract function getCode();
Параметры настройки сервиса
/**
* @return array
*/
public static function getConfig();
/**
* @param string $ip
* @param string $lang
* @return null|\BXmaker\GeoIP\Service\Data
*/
public abstract function getData(string $ip, string $lang = 'ru');
/**
* @param mixed $response
* @param mixed $clientSideServiceData - те же данные, что и полученные методом getClientData
* @return null|\BXmaker\GeoIP\Service\Data
*/
public function getDataByClientSideServiceResponse($response, $clientSideServiceData);
Вернет описание сервиса
/**
* @return string
*/
public static abstract function getDescription();
Вернет объект для запросов к внешнему сервису
/**
* @return \Bitrix\Main\Web\HttpClient
*/
public function getHttpClient();
Вернет дату последнего обновления локальной базы IP адресов
/**
* @return null|\Bitrix\Main\Type\DateTime
*/
public function getLocalDatabaseUpdatedDate();
Вернет языкозависимое сообщение
/**
* @param $name
* @param $arReplace
* @return string
*/
public static function getMessage($name, $arReplace = null);
Вернет название сервиса
/**
* @return string
*/
public static abstract function getName();
Вернет значение параметра из настроек проинициализированного сервиса
/**
* @param $code
* @return mixed|null
*/
public function getParam($code);
public function isEnabledUseLocaDatabase();
Включена ли возможность использвоания на клиенте
/**
* @return bool
*/
public function isEnabledUseOnClient();
Включена ли возомжность использвоания на сервере
/**
* @return bool
*/
public function isEnabledUseOnServer();
Включение/отключение использования локлаьной базы данных, если это доступно
/**
* @param $flag
* @return void
*/
public function setEnabledUseLocalDatabase($flag);
Включение/отключение использования в браузере
/**
* @param $flag
* @return void
*/
public function setEnabledUseOnClient($flag);
Включение/отключение использования на сервере
/**
* @param $flag
* @return void
*/
public function setEnabledUseOnServer($flag);
Запуск обнволения локальной базы данных по IP адерсам
/**
* @return bool
*/
public function updateLocalDatabase() : bool;