Code Duplication    Length = 92-92 lines in 2 locations

src/API/RoomCalendar.php 1 location

@@ 5-96 (lines=92) @@
2
3
namespace Gueststream\PMS\IQWare\API;
4
5
class RoomCalendar
6
{
7
8
    /**
9
     * @var \DateTime $CalendarDate
10
     */
11
    protected $CalendarDate = null;
12
13
    /**
14
     * @var int $AvailableRooms
15
     */
16
    protected $AvailableRooms = null;
17
18
    /**
19
     * @var int $AvailableSuites
20
     */
21
    protected $AvailableSuites = null;
22
23
    /**
24
     * @param \DateTime $CalendarDate
25
     * @param int $AvailableRooms
26
     * @param int $AvailableSuites
27
     */
28
    public function __construct(\DateTime $CalendarDate, $AvailableRooms, $AvailableSuites)
29
    {
30
        $this->CalendarDate = $CalendarDate->format(\DateTime::ATOM);
31
        $this->AvailableRooms = $AvailableRooms;
32
        $this->AvailableSuites = $AvailableSuites;
33
    }
34
35
    /**
36
     * @return \DateTime
37
     */
38
    public function getCalendarDate()
39
    {
40
        if ($this->CalendarDate == null) {
41
            return null;
42
        } else {
43
            try {
44
                return new \DateTime($this->CalendarDate);
45
            } catch (\Exception $e) {
46
                return false;
47
            }
48
        }
49
    }
50
51
    /**
52
     * @param \DateTime $CalendarDate
53
     * @return \Gueststream\PMS\IQWare\API\RoomCalendar
54
     */
55
    public function setCalendarDate(\DateTime $CalendarDate)
56
    {
57
        $this->CalendarDate = $CalendarDate->format(\DateTime::ATOM);
58
        return $this;
59
    }
60
61
    /**
62
     * @return int
63
     */
64
    public function getAvailableRooms()
65
    {
66
        return $this->AvailableRooms;
67
    }
68
69
    /**
70
     * @param int $AvailableRooms
71
     * @return \Gueststream\PMS\IQWare\API\RoomCalendar
72
     */
73
    public function setAvailableRooms($AvailableRooms)
74
    {
75
        $this->AvailableRooms = $AvailableRooms;
76
        return $this;
77
    }
78
79
    /**
80
     * @return int
81
     */
82
    public function getAvailableSuites()
83
    {
84
        return $this->AvailableSuites;
85
    }
86
87
    /**
88
     * @param int $AvailableSuites
89
     * @return \Gueststream\PMS\IQWare\API\RoomCalendar
90
     */
91
    public function setAvailableSuites($AvailableSuites)
92
    {
93
        $this->AvailableSuites = $AvailableSuites;
94
        return $this;
95
    }
96
}
97

src/API/UnitAvailabilityCalendar.php 1 location

@@ 5-96 (lines=92) @@
2
3
namespace Gueststream\PMS\IQWare\API;
4
5
class UnitAvailabilityCalendar
6
{
7
8
    /**
9
     * @var \DateTime $CalendarDate
10
     */
11
    protected $CalendarDate = null;
12
13
    /**
14
     * @var boolean $AvailableForArrival
15
     */
16
    protected $AvailableForArrival = null;
17
18
    /**
19
     * @var boolean $AvailableForDeparture
20
     */
21
    protected $AvailableForDeparture = null;
22
23
    /**
24
     * @param \DateTime $CalendarDate
25
     * @param boolean $AvailableForArrival
26
     * @param boolean $AvailableForDeparture
27
     */
28
    public function __construct(\DateTime $CalendarDate, $AvailableForArrival, $AvailableForDeparture)
29
    {
30
        $this->CalendarDate = $CalendarDate->format(\DateTime::ATOM);
31
        $this->AvailableForArrival = $AvailableForArrival;
32
        $this->AvailableForDeparture = $AvailableForDeparture;
33
    }
34
35
    /**
36
     * @return \DateTime
37
     */
38
    public function getCalendarDate()
39
    {
40
        if ($this->CalendarDate == null) {
41
            return null;
42
        } else {
43
            try {
44
                return new \DateTime($this->CalendarDate);
45
            } catch (\Exception $e) {
46
                return false;
47
            }
48
        }
49
    }
50
51
    /**
52
     * @param \DateTime $CalendarDate
53
     * @return \Gueststream\PMS\IQWare\API\UnitAvailabilityCalendar
54
     */
55
    public function setCalendarDate(\DateTime $CalendarDate)
56
    {
57
        $this->CalendarDate = $CalendarDate->format(\DateTime::ATOM);
58
        return $this;
59
    }
60
61
    /**
62
     * @return boolean
63
     */
64
    public function getAvailableForArrival()
65
    {
66
        return $this->AvailableForArrival;
67
    }
68
69
    /**
70
     * @param boolean $AvailableForArrival
71
     * @return \Gueststream\PMS\IQWare\API\UnitAvailabilityCalendar
72
     */
73
    public function setAvailableForArrival($AvailableForArrival)
74
    {
75
        $this->AvailableForArrival = $AvailableForArrival;
76
        return $this;
77
    }
78
79
    /**
80
     * @return boolean
81
     */
82
    public function getAvailableForDeparture()
83
    {
84
        return $this->AvailableForDeparture;
85
    }
86
87
    /**
88
     * @param boolean $AvailableForDeparture
89
     * @return \Gueststream\PMS\IQWare\API\UnitAvailabilityCalendar
90
     */
91
    public function setAvailableForDeparture($AvailableForDeparture)
92
    {
93
        $this->AvailableForDeparture = $AvailableForDeparture;
94
        return $this;
95
    }
96
}
97