GeoIP 4.0

\BXmaker\GeoIP\Position

\BXmaker\GeoIP\Position -

Класс для работы c геопозицией пользователя, для хранения в едином формате и возможности расширения данных

namespace BXmaker\GeoIP;
class Position implements \JsonSerializable
{
    //...
}

Методы

__construct

protected function __construct();

createByGeoData

Создает объект позиции на основе геоданых, полученных по IP адресу

/**
 * @param \BXmaker\GeoIP\Service\Data $data
 * @return \BXmaker\GeoIP\Position|null
 * @throws \Bitrix\Main\ArgumentException
 */
public static function createByGeoData($geoData);

createByLocationId

Создание позии по идентифкиатору местоположения

/**
 * @param int $locationId
 * @return \BXmaker\GeoIP\Position|null
 * @throws \Bitrix\Main\ArgumentException
 * @throws \Bitrix\Main\ArgumentTypeException
 * @throws \Bitrix\Main\ObjectPropertyException
 * @throws \Bitrix\Main\SystemException
 */
public static function createByLocationId(int $locationId);

createFromFields

Установка значений полей из массива, используется при восстановлении состояния из сессии

/**
 * @param array $arFields
 * @return static
 */
public static function createFromFields($arFields = []);

getField

Вернет значение дополнительное

/**
 * @param $fieldName
 * @return mixed|null
 */
public function getField($fieldName);

getFields

Вернет полный набор полей

/**
 * @return array
 */
public function getFields();

getItem

Вернет объект найденного местоположения с его компонентами

/**
 * @return \BXmaker\GeoIP\Location\Search\Item|null
 */
public function getItem();

getLat

Вернет широту, latitude

/**
 * @return mixed|null
 */
public function getLat();

getLocationCode

Вернет код местоположения

/**
 * @return string|null
 */
public function getLocationCode();

getLocationId

Вернет идентификтаор местоположения

/**
 * @return int|null
 */
public function getLocationId();

getLon

Вернет долготу, longitude

/**
 * @return mixed|null
 */
public function getLon();

getPostalCode

Вернет почтовый индекс

/**
 * @return string|null
 */
public function getPostalCode();

getRegion

Вернет объект региона соответствующего позиции

/**
 * @return \BXmaker\GeoIP\Region\Item|null
 */
public function getRegion();

getRegionId

Вернет идентификатор региона, если он установлен

/**
 * @return int|null
 */
public function getRegionId();

isEqual

/**
 * @param static $anotherPosition
 * @return bool
 */
public function isEqual($anotherPosition);

jsonSerialize

/**
 * @inheritDoc
 */
public function jsonSerialize();

setField

Установит дополнительное значение

/**
 * @param string $fieldName
 * @param mixed $value
 * @return $this
 */
public function setField($fieldName, $value);

setItem

Установка объекта найденного местоположения с его компонентами

/**
 * @param \BXmaker\GeoIP\Location\Search\Item|null $item
 * @return $this
 */
public function setItem($item);

setLat

Установка широты, latitude

/**
 * @param $value
 * @return $this
 */
public function setLat($value);

setLocationCode

Установка кода местоположения

/**
 * @param string|null $value
 * @return $this
 */
public function setLocationCode($value);

setLocationId

Установка идентфикатора местоположения

/**
 * @param int|null $value
 * @return $this
 */
public function setLocationId($value);

setLon

Установка долготы, longitude

/**
 * @param $value
 * @return $this
 */
public function setLon($value);

setPostalCode

Установка объекта найденного местоположения с его компонентами

/**
 * @param string|null $value
 * @return $this
 */
public function setPostalCode($value);

setRegion

Установка объекта региона соответствующего местоположению

/**
 * @param \BXmaker\GeoIP\Region\Item|null $region
 * @return $this
 */
public function setRegion($region);