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 / Factory / Schedule / TimeOutFactory.php
ameliabooking / src / Domain / Factory / Schedule Last commit date
DayOffFactory.php 5 years ago PeriodFactory.php 2 years ago PeriodLocationFactory.php 3 years ago PeriodServiceFactory.php 7 years ago SpecialDayFactory.php 7 years ago SpecialDayPeriodFactory.php 2 years ago SpecialDayPeriodLocationFactory.php 3 years ago SpecialDayPeriodServiceFactory.php 7 years ago TimeOutFactory.php 7 years ago WeekDayFactory.php 7 years ago
TimeOutFactory.php
32 lines
1 <?php
2
3 namespace AmeliaBooking\Domain\Factory\Schedule;
4
5 use AmeliaBooking\Domain\Entity\Schedule\TimeOut;
6 use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;
7 use AmeliaBooking\Domain\ValueObjects\Number\Integer\Id;
8 use AmeliaBooking\Domain\ValueObjects\DateTime\DateTimeValue;
9
10 class TimeOutFactory
11 {
12 /**
13 * @param array $data
14 *
15 * @return TimeOut
16 * @throws InvalidArgumentException
17 */
18 public static function create($data)
19 {
20 $timeOut = new TimeOut(
21 new DateTimeValue(\DateTime::createFromFormat('H:i:s', $data['startTime'])),
22 new DateTimeValue(\DateTime::createFromFormat('H:i:s', $data['endTime']))
23 );
24
25 if (isset($data['id'])) {
26 $timeOut->setId(new Id($data['id']));
27 }
28
29 return $timeOut;
30 }
31 }
32