TODO: cleaned, +hide individual recurring bookings
[iserv-mod-room-reservation.git] / includes / mod_roomReservationRoom.inc
1 <?php
2 /**
3 * @file mod_roomReservationRoom.inc
4 * Container class for the representation of a room
5 * @author Roland Hieber (roland.hieber@wilhelm-gym.net)
6 * @date 28.12.2007
7 *
8 * Copyright © 2007 Roland Hieber
9 *
10 * Permission is hereby granted, free of charge, to any person obtaining
11 * copy of this software and associated documentation files (the "Software"),
12 * to deal in the Software without restriction, including without limitation
13 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
14 * and/or sell copies of the Software, and to permit persons to whom the
15 * Software is furnished to do so, subject to the following conditions:
16 *
17 * The above copyright notice and this permission notice shall be included in
18 * all copies or substantial portions of the Software.
19 *
20 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26 * THE SOFTWARE.
27 *
28 * @todo move into M Class Library
29 */
30
31 /**
32 * Container class for the representation of a room
33 */
34 class mod_roomReservationRoom {
35
36 /** (string) Name of the room */
37 protected $strName;
38 /** (string) Room number */
39 protected $strRoomNo;
40 /** (string) Floor */
41 protected $strFloor;
42 /** (string) Building */
43 protected $strBuilding;
44 /** (string) Location */
45 protected $strLocation;
46
47 /***************************************************************************/
48 /**
49 * @name Constructor
50 * @{
51 * Constructor.
52 * @param $strName (string) Name of the room
53 * @return rmRoom
54 */
55 public function __construct($strName, $strRoomNo = "", $strFloor = "",
56 $strBuilding = "", $strLocation = "") {
57 $this->setName($strName);
58 $this->setRoomNo($strRoomNo);
59 $this->setFloor($strFloor);
60 $this->setBuilding($strBuilding);
61 $this->setLocation($strLocation);
62 }
63
64 /***************************************************************************/
65 /**
66 * @}
67 * @name Access to attributes
68 * @{
69 */
70
71 /**
72 * Set the name of the room
73 * @param $str (string)
74 * @return void
75 */
76 public function setName($str) { $this->strName = $str; }
77
78 /**
79 * Set the room number
80 * @param $str (string)
81 * @return void
82 */
83 public function setRoomNo($str) { $this->strRoomNo = $str; }
84
85 /**
86 * Set the floor
87 * @param $str (string)
88 * @return void
89 */
90 public function setFloor($str) { $this->strFloor = $str; }
91
92 /**
93 * Set the building
94 * @param $str (string)
95 * @return void
96 */
97 public function setBuilding($str) { $this->strBuilding = $str; }
98
99 /**
100 * Set the location
101 * @param $str (string)
102 * @return void
103 */
104 public function setLocation($str) { $this->strLocation = $str; }
105
106 /**
107 * Get the name of the room
108 * @return string
109 */
110 public function getName() { return $this->strName; }
111
112 /**
113 * Get the room number
114 * @return string
115 */
116 public function geRoomNo() { return $this->strRoomNo; }
117
118 /**
119 * Get the floor
120 * @return string
121 */
122 public function getFloor() { return $this->strFloor; }
123
124 /**
125 * Get the building
126 * @return string
127 */
128 public function getBuilding() { return $this->strBuilding; }
129
130 /**
131 * Get the location
132 * @return string
133 */
134 public function getLocation() { return $this->strLocation; }
135
136 /**
137 * Conversion to string
138 * @return string
139 */
140 public function __toString() { return $this->getName(); /* name is key */ }
141 /**@}*/
142 }
143 ?>
This page took 0.069848 seconds and 5 git commands to generate.