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