PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 1.2.20
Booking for Appointments and Events Calendar – Amelia v1.2.20
2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / src / Domain / ValueObjects / GeoTag.php
ameliabooking / src / Domain / ValueObjects Last commit date
DateTime 3 years ago Number 3 years ago String 1 year ago BooleanValueObject.php 7 years ago Discount.php 7 years ago DiscountFixedValue.php 7 years ago DiscountPercentageValue.php 7 years ago Duration.php 7 years ago Gender.php 7 years ago GeoTag.php 7 years ago Json.php 7 years ago Picture.php 7 years ago PositiveDuration.php 7 years ago Priority.php 3 years ago Recurring.php 4 years ago
GeoTag.php
78 lines
1 <?php
2
3 namespace AmeliaBooking\Domain\ValueObjects;
4
5 use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;
6
7 /**
8 * Class GeoTag
9 *
10 * @package AmeliaBooking\Domain\ValueObjects
11 */
12 final class GeoTag
13 {
14 /**
15 * @var float
16 */
17 private $latitude;
18
19 /**
20 * @var float
21 */
22 private $longitude;
23
24 /**
25 * GeoTag constructor.
26 *
27 * @param $latitude
28 * @param $longitude
29 *
30 * @throws InvalidArgumentException
31 */
32 public function __construct($latitude, $longitude)
33 {
34 if (empty($latitude)) {
35 throw new InvalidArgumentException("Latitude can't be empty");
36 }
37 $this->latitude = (float)$latitude;
38
39 if (empty($longitude)) {
40 throw new InvalidArgumentException("Longitude can't be empty");
41 }
42 $this->longitude = (float)$longitude;
43 }
44
45 /**
46 * Return the latitude from the value object
47 *
48 * @return float
49 */
50 public function getLatitude()
51 {
52 return $this->latitude;
53 }
54
55 /**
56 * Return the longitude from the value object
57 *
58 * @return float
59 */
60 public function getLongitude()
61 {
62 return $this->longitude;
63 }
64
65 /**
66 * Return array with longitude and latitude from value object
67 *
68 * @return array
69 */
70 public function getValue()
71 {
72 return [
73 'latitude' => $this->getLatitude(),
74 'longitude' => $this->getLongitude()
75 ];
76 }
77 }
78