\BXmaker\GeoIP\Service
\BXmaker\GeoIP\ServiceTable -
namespace BXmaker\GeoIP;
class ServiceTable extends \Bitrix\Main\ORM\Data\DataManager
{
//...
}
Методы
getFilePath
public static function getFilePath();
getMap
public static function getMap();
getTableName
public static function getTableName();
\BXmaker\GeoIP\Service -
Класс для взаимодействия с сервисами через которые происходит разбор IP адресов
namespace BXmaker\GeoIP;
class Service
{
//...
}
Константы
ON_BUILD_SERVICE_LIST
\BXmaker\GeoIP\Service::ON_BUILD_SERVICE_LIST = 'onBuildServiceList'
LOG_UPDATE_LOCAL_DATABASE
\BXmaker\GeoIP\Service::LOG_UPDATE_LOCAL_DATABASE = 'UPDATE_LOCAL_DATABASE'
Методы
__construct
public function __construct();
defineIp
Вернет ip адрес из параметров сервера, если удастся его определить, либо null
/**
* @return string|null
*/
public function defineIp();
getArray
Вернет массив доступных сервисов
/**
* @emit self::ON_BUILD_SERVICE_LIST
* @return mixed [[CLASS:string, NAME: string], ...]
*/
public static function getArray();
getData
Вернет данные по IP адресу
/**
* @param $ip
* @return null|\BXmaker\GeoIP\Service\Data
*/
public function getData($ip, $withBitrixGeoService = true);
getIp
Вернет текущий IP адрес
/**
* @return string|null
*/
public function getIp();
getServiceByCode
Вернет активный проинициализированный сервис по коду, либо null
/**
* @param $serviceCode
* @return \BXmaker\GeoIP\Service\Base|null
* @throws \Bitrix\Main\ArgumentException
* @throws \Bitrix\Main\ObjectPropertyException
* @throws \Bitrix\Main\SystemException
*/
public function getServiceByCode($serviceCode);
getServicesDataForClientSide
Вернете массив c данными сервисов для клиентской стороны, определения геопозиции в браузере
/**
* @return array
* @throws \Bitrix\Main\ArgumentException
* @throws \Bitrix\Main\ObjectPropertyException
* @throws \Bitrix\Main\SystemException
*/
public function getServicesDataForClientSide();
initAllServices
Проинициализирует все активные сервисы
/**
* @return bool
* @throws \Bitrix\Main\ArgumentException
* @throws \Bitrix\Main\ObjectPropertyException
* @throws \Bitrix\Main\SystemException
*/
public function initAllServices();
initServiceByRow
Инициализация класса сервиса по записи из БД
/**
* @param array $arService - массив с полями записи
* @return \BXmaker\GeoIP\Service\Base
* @throws \Bitrix\Main\ArgumentException
*/
public function initServiceByRow($arService);
isValidIp
Проверка подходит ли IP для использования
/**
* @param $ip
* @return bool
*/
public static function isValidIp($ip);
setEnabledBitrixServiceGeoIP
Вклчюение/отклчюение использования встроеных сервисов геолокации, для исключения зацикливания, так как модуль может использовать встроеные сервисы геолокации при том что среди встроенных сервисов геолокации может быть добавлен обработчик от модуля
/**
* @param $flag
* @return $this
*/
public function setEnabledBitrixServiceGeoIP($flag);
setIp
Установка конкретного IP
/**
* @param $ip
* @return $this
*/
public function setIp($ip);
table
/**
* @return \BXmaker\GeoIP\ServiceTable
*/
public function table();
updateDatabase
Запускает обнволение локлаьной базы данных с ip адресами для всех сервисов
/**
* @return bool
*/
public function updateDatabase();