\BXmaker\GeoIP\Position
-
Класс для работы c геопозицией пользователя, для хранения в едином формате и возможности расширения данных
namespace BXmaker\GeoIP;
class Position implements \JsonSerializable
{
//...
}
protected function __construct();
Создает объект позиции на основе геоданых, полученных по IP адресу
/**
* @param \BXmaker\GeoIP\Service\Data $data
* @return \BXmaker\GeoIP\Position|null
* @throws \Bitrix\Main\ArgumentException
*/
public static function createByGeoData($geoData);
Создание позии по идентифкиатору местоположения
/**
* @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);
Установка значений полей из массива, используется при восстановлении состояния из сессии
/**
* @param array $arFields
* @return static
*/
public static function createFromFields($arFields = []);
Вернет значение дополнительное
/**
* @param $fieldName
* @return mixed|null
*/
public function getField($fieldName);
Вернет полный набор полей
/**
* @return array
*/
public function getFields();
Вернет объект найденного местоположения с его компонентами
/**
* @return \BXmaker\GeoIP\Location\Search\Item|null
*/
public function getItem();
Вернет широту, latitude
/**
* @return mixed|null
*/
public function getLat();
Вернет код местоположения
/**
* @return string|null
*/
public function getLocationCode();
Вернет идентификтаор местоположения
/**
* @return int|null
*/
public function getLocationId();
Вернет долготу, longitude
/**
* @return mixed|null
*/
public function getLon();
Вернет почтовый индекс
/**
* @return string|null
*/
public function getPostalCode();
Вернет объект региона соответствующего позиции
/**
* @return \BXmaker\GeoIP\Region\Item|null
*/
public function getRegion();
Вернет идентификатор региона, если он установлен
/**
* @return int|null
*/
public function getRegionId();
/**
* @param static $anotherPosition
* @return bool
*/
public function isEqual($anotherPosition);
/**
* @inheritDoc
*/
public function jsonSerialize();
Установит дополнительное значение
/**
* @param string $fieldName
* @param mixed $value
* @return $this
*/
public function setField($fieldName, $value);
Установка объекта найденного местоположения с его компонентами
/**
* @param \BXmaker\GeoIP\Location\Search\Item|null $item
* @return $this
*/
public function setItem($item);
Установка широты, latitude
/**
* @param $value
* @return $this
*/
public function setLat($value);
Установка кода местоположения
/**
* @param string|null $value
* @return $this
*/
public function setLocationCode($value);
Установка идентфикатора местоположения
/**
* @param int|null $value
* @return $this
*/
public function setLocationId($value);
Установка долготы, longitude
/**
* @param $value
* @return $this
*/
public function setLon($value);
Установка объекта найденного местоположения с его компонентами
/**
* @param string|null $value
* @return $this
*/
public function setPostalCode($value);
Установка объекта региона соответствующего местоположению
/**
* @param \BXmaker\GeoIP\Region\Item|null $region
* @return $this
*/
public function setRegion($region);