2 namespace Stock\Entity;
4 use Doctrine\ORM\Mapping as ORM;
10 * @ORM\Table(name="stock_images")
16 * Can archive records.
20 * Pull Synchronization Strategy for this table.
22 const PULL_SYNCH_STRATEGY = false;
24 * Push Synchronization Strategy for this table.
26 const PUSH_SYNCH_STRATEGY = false;
31 * @ORM\Column(type="integer");
32 * @ORM\GeneratedValue(strategy="AUTO")
37 * @ORM\ManyToOne(targetEntity="Stock", inversedBy="accessories")
38 * @ORM\JoinColumn(name="stock_id", referencedColumnName="id")
43 * @ORM\ManyToOne(targetEntity="\Utility\Entity\Image")
44 * @ORM\JoinColumn(nullable=true, name="main_lib_photo_id")
48 * @ORM\Column(type="string", nullable=true, length=255, name="main_url");
50 protected $mainImageUrl;
53 * @ORM\ManyToOne(targetEntity="\Utility\Entity\Image")
54 * @ORM\JoinColumn(nullable=true, name="front_lib_photo_id")
56 protected $frontImage;
58 * @ORM\Column(type="string", nullable=true, length=255, name="front_url");
60 protected $frontImageUrl;
63 * @ORM\ManyToOne(targetEntity="\Utility\Entity\Image")
64 * @ORM\JoinColumn(nullable=true, name="right_lib_photo_id")
66 protected $rightImage;
68 * @ORM\Column(type="string", nullable=true, length=255, name="right_url");
70 protected $rightImageUrl;
73 * @ORM\ManyToOne(targetEntity="\Utility\Entity\Image")
74 * @ORM\JoinColumn(nullable=true, name="left_lib_photo_id")
78 * @ORM\Column(type="string", nullable=true, length=255, name="left_url");
80 protected $leftImageUrl;
83 * @ORM\ManyToOne(targetEntity="\Utility\Entity\Image")
84 * @ORM\JoinColumn(nullable=true, name="back_lib_photo_id")
88 * @ORM\Column(type="string", nullable=true, length=255, name="back_url");
90 protected $backImageUrl;
93 * @ORM\ManyToOne(targetEntity="\Utility\Entity\Image")
94 * @ORM\JoinColumn(nullable=true, name="interior_lib_photo_id")
96 protected $interiorImage;
98 * @ORM\Column(type="string", nullable=true, length=255, name="interior_url");
100 protected $interiorImageUrl;
103 * @ORM\ManyToOne(targetEntity="\Utility\Entity\Image")
104 * @ORM\JoinColumn(nullable=true, name="engine_lib_photo_id")
106 protected $engineImage;
108 * @ORM\Column(type="string", nullable=true, length=255, name="engine_url");
110 protected $engineImageUrl;
113 * @ORM\ManyToOne(targetEntity="\Utility\Entity\Image")
114 * @ORM\JoinColumn(nullable=true, name="natis_lib_photo_id")
116 protected $natisImage;
118 * @ORM\Column(type="string", nullable=true, length=255, name="natis_url");
120 protected $natisImageUrl;
123 * @ORM\Column(type="boolean");
125 protected $archived = false;
130 * Magic getter to expose protected properties.
131 * @param string $property
134 public function __get($property)
136 return $this->$property;
140 * Magic setter to save protected properties.
141 * @param string $property
142 * @param mixed $value
144 public function __set($property, $value)
146 $this->$property = $value;
150 * Convert the object to an array.
151 * @param array $expand
152 * @param array $intersect
155 public function toArray(
156 array $expand = array(), array $intersect = array(), $showIdentifiers = false
159 $includeAll = empty($intersect);
161 ($includeAll || isset($intersect['id']))
162 && $data['id'] = $this->id;
163 ($includeAll || isset($intersect['accessory']))
164 && $data['accessory'] = $showIdentifiers
165 ? $this->accessory->id
166 : $this->accessory->toArray();
171 * Populate from an array.
174 public function fromArray($data = array())
177 && $this->id = $data['id'];
178 isset($data['stock'])
179 && $this->stock = $data['stock'];
180 isset($data['mainImage'])
181 && $this->mainImage = $data['mainImage'];
182 isset($data['mainImageUrl'])
183 && $this->mainImageUrl = $data['mainImageUrl'];
184 isset($data['frontImage'])
185 && $this->frontImage = $data['frontImage'];
186 isset($data['frontImageUrl'])
187 && $this->frontImageUrl = $data['frontImageUrl'];
188 isset($data['rightImage'])
189 && $this->rightImage = $data['rightImage'];
190 isset($data['rightImageUrl'])
191 && $this->rightImageUrl = $data['rightImageUrl'];
192 isset($data['leftImage'])
193 && $this->leftImage = $data['leftImage'];
194 isset($data['leftImageUrl'])
195 && $this->leftImageUrl = $data['leftImageUrl'];
196 isset($data['backImage'])
197 && $this->backImage = $data['backImage'];
198 isset($data['backImageUrl'])
199 && $this->backImageUrl = $data['backImageUrl'];
200 isset($data['interiorImage'])
201 && $this->interiorImage = $data['interiorImage'];
202 isset($data['interiorImageUrl'])
203 && $this->interiorImageUrl = $data['interiorImageUrl'];
204 isset($data['engineImage'])
205 && $this->engineImage = $data['engineImage'];
206 isset($data['engineImageUrl'])
207 && $this->engineImageUrl = $data['engineImageUrl'];
208 isset($data['natisImage'])
209 && $this->natisImage = $data['natisImage'];
210 isset($data['natisImageUrl'])
211 && $this->natisImageUrl = $data['natisImageUrl'];