PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 1.2.5
Booking for Appointments and Events Calendar – Amelia v1.2.5
2.4.9 2.4.8 2.4.7 2.4.6 2.4.5 2.4.4 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 / DiscountPercentageValue.php
ameliabooking / src / Domain / ValueObjects Last commit date
DateTime 1 year ago Number 1 year ago String 1 year ago BooleanValueObject.php 1 year ago Discount.php 1 year ago DiscountFixedValue.php 1 year ago DiscountPercentageValue.php 1 year ago Duration.php 1 year ago Gender.php 1 year ago GeoTag.php 1 year ago Json.php 1 year ago Picture.php 1 year ago PositiveDuration.php 1 year ago Priority.php 1 year ago Recurring.php 1 year ago
DiscountPercentageValue.php
53 lines
1 <?php
2
3 namespace AmeliaBooking\Domain\ValueObjects;
4
5 use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;
6
7 /**
8 * Class DiscountPercentageValue
9 *
10 * @package AmeliaBooking\Domain\ValueObjects
11 */
12 final class DiscountPercentageValue
13 {
14 /**
15 * @var string
16 */
17 private $value;
18
19 /**
20 * DiscountPercentageValue constructor.
21 *
22 * @param string $value
23 *
24 * @throws InvalidArgumentException
25 */
26 public function __construct($value)
27 {
28 if ($value === null) {
29 throw new InvalidArgumentException('Discount can\'t be empty');
30 }
31
32 if (filter_var($value, FILTER_VALIDATE_FLOAT) === false) {
33 throw new InvalidArgumentException("Discount \"{$value}\" must be float");
34 }
35
36 if ($value < 0 || $value > 100) {
37 throw new InvalidArgumentException('Discount must be between 0 and 100');
38 }
39
40 $this->value = (float)$value;
41 }
42
43 /**
44 * Return the value from the value object
45 *
46 * @return string
47 */
48 public function getValue()
49 {
50 return $this->value;
51 }
52 }
53