1: <?php
2:
3: namespace MaxMind\MinFraud\Model;
4:
5: /**
6: * Abstract model for a postal address.
7: *
8: * @property-read int|null $distanceToIpLocation The distance in kilometers from
9: * the address to the IP location.
10: * @property-read bool|null $isInIpCountry This property is true if the address
11: * is in the IP country. The property is false when the address is not in the
12: * IP country. If the address could not be parsed or was not provided or if
13: * the IP address could not be geolocated, the property will be null.
14: * @property-read bool|null $isPostalInCity This property is true if the postal
15: * code provided with the address is in the city for the address. The property
16: * is false when the postal code is not in the city. If the address was not
17: * provided or could not be parsed, the property will be null.
18: * @property-read float|null $latitude The latitude associated with the address.
19: * @property-read float|null $longitude The longitude associated with the address.
20: */
21: abstract class Address extends AbstractModel
22: {
23: /**
24: * @internal
25: */
26: protected $isPostalInCity;
27:
28: /**
29: * @internal
30: */
31: protected $latitude;
32:
33: /**
34: * @internal
35: */
36: protected $longitude;
37:
38: /**
39: * @internal
40: */
41: protected $distanceToIpLocation;
42:
43: /**
44: * @internal
45: */
46: protected $isInIpCountry;
47:
48: public function __construct($response, $locales = ['en'])
49: {
50: parent::__construct($response, $locales);
51:
52: $this->isPostalInCity = $this->safeArrayLookup($response['is_postal_in_city']);
53: $this->latitude = $this->safeArrayLookup($response['latitude']);
54: $this->longitude = $this->safeArrayLookup($response['longitude']);
55: $this->distanceToIpLocation = $this->safeArrayLookup($response['distance_to_ip_location']);
56: $this->isInIpCountry = $this->safeArrayLookup($response['is_in_ip_country']);
57: }
58: }
59: