var/classes/DataObject/Car.php line 622

Open in your IDE?
  1. <?php
  2. /**
  3. * Inheritance: yes
  4. * Variants: no
  5. Fields Summary:
  6. - localizedfields [localizedfields]
  7. -- name [input]
  8. -- description [wysiwyg]
  9. -- textsAvailable [calculatedValue]
  10. - series [input]
  11. - manufacturer [manyToOneRelation]
  12. - bodyStyle [manyToOneRelation]
  13. - photo [manyToManyRelation]
  14. - carClass [select]
  15. - productionYear [numeric]
  16. - color [multiselect]
  17. - country [country]
  18. - categories [manyToManyObjectRelation]
  19. - gallery [imageGallery]
  20. - genericImages [imageGallery]
  21. - attributes [objectbricks]
  22. - saleInformation [objectbricks]
  23. - location [geopoint]
  24. - attributesAvailable [calculatedValue]
  25. - saleInformationAvailable [calculatedValue]
  26. - imagesAvailable [calculatedValue]
  27. - objectType [select]
  28. - urlSlug [urlSlug]
  29. */
  30. namespace Pimcore\Model\DataObject;
  31. use Pimcore\Model\DataObject\Exception\InheritanceParentNotFoundException;
  32. use Pimcore\Model\DataObject\PreGetValueHookInterface;
  33. /**
  34. * @method static \Pimcore\Model\DataObject\Car\Listing getList(array $config = [])
  35. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByLocalizedfields($field, $value, $locale = null, $limit = 0, $offset = 0, $objectTypes = null)
  36. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByName($value, $locale = null, $limit = 0, $offset = 0, $objectTypes = null)
  37. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByDescription($value, $locale = null, $limit = 0, $offset = 0, $objectTypes = null)
  38. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByTextsAvailable($value, $locale = null, $limit = 0, $offset = 0, $objectTypes = null)
  39. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getBySeries($value, $limit = 0, $offset = 0, $objectTypes = null)
  40. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByManufacturer($value, $limit = 0, $offset = 0, $objectTypes = null)
  41. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByBodyStyle($value, $limit = 0, $offset = 0, $objectTypes = null)
  42. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByPhoto($value, $limit = 0, $offset = 0, $objectTypes = null)
  43. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByCarClass($value, $limit = 0, $offset = 0, $objectTypes = null)
  44. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByProductionYear($value, $limit = 0, $offset = 0, $objectTypes = null)
  45. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByColor($value, $limit = 0, $offset = 0, $objectTypes = null)
  46. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByCountry($value, $limit = 0, $offset = 0, $objectTypes = null)
  47. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByCategories($value, $limit = 0, $offset = 0, $objectTypes = null)
  48. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByObjectType($value, $limit = 0, $offset = 0, $objectTypes = null)
  49. * @method static \Pimcore\Model\DataObject\Car\Listing|\Pimcore\Model\DataObject\Car|null getByUrlSlug($value, $limit = 0, $offset = 0, $objectTypes = null)
  50. */
  51. class Car extends \App\Model\Product\AbstractProduct
  52. {
  53. protected $o_classId "CAR";
  54. protected $o_className "Car";
  55. protected $localizedfields;
  56. protected $series;
  57. protected $manufacturer;
  58. protected $bodyStyle;
  59. protected $photo;
  60. protected $carClass;
  61. protected $productionYear;
  62. protected $color;
  63. protected $country;
  64. protected $categories;
  65. protected $gallery;
  66. protected $genericImages;
  67. protected $attributes;
  68. protected $saleInformation;
  69. protected $location;
  70. protected $objectType;
  71. protected $urlSlug;
  72. /**
  73. * @param array $values
  74. * @return \Pimcore\Model\DataObject\Car
  75. */
  76. public static function create($values = array()) {
  77.     $object = new static();
  78.     $object->setValues($values);
  79.     return $object;
  80. }
  81. /**
  82. * Get localizedfields - 
  83. * @return \Pimcore\Model\DataObject\Localizedfield|null
  84. */
  85. public function getLocalizedfields(): ?\Pimcore\Model\DataObject\Localizedfield
  86. {
  87.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  88.         $preValue $this->preGetValue("localizedfields");
  89.         if ($preValue !== null) {
  90.             return $preValue;
  91.         }
  92.     }
  93.     $data $this->getClass()->getFieldDefinition("localizedfields")->preGetData($this);
  94.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("localizedfields")->isEmpty($data)) {
  95.         try {
  96.             return $this->getValueFromParent("localizedfields");
  97.         } catch (InheritanceParentNotFoundException $e) {
  98.             // no data from parent available, continue ...
  99.         }
  100.     }
  101.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  102.         return $data->getPlain();
  103.     }
  104.     return $data;
  105. }
  106. /**
  107. * Get name - Name
  108. * @return string|null
  109. */
  110. public function getName($language null): ?string
  111. {
  112.     $data $this->getLocalizedfields()->getLocalizedValue("name"$language);
  113.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  114.         $preValue $this->preGetValue("name");
  115.         if ($preValue !== null) {
  116.             return $preValue;
  117.         }
  118.     }
  119.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  120.         return $data->getPlain();
  121.     }
  122.     return $data;
  123. }
  124. /**
  125. * Get description - Description
  126. * @return string|null
  127. */
  128. public function getDescription($language null): ?string
  129. {
  130.     $data $this->getLocalizedfields()->getLocalizedValue("description"$language);
  131.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  132.         $preValue $this->preGetValue("description");
  133.         if ($preValue !== null) {
  134.             return $preValue;
  135.         }
  136.     }
  137.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  138.         return $data->getPlain();
  139.     }
  140.     return $data;
  141. }
  142. /**
  143. * Get textsAvailable - Texts Available
  144. * @return \Pimcore\Model\DataObject\Data\CalculatedValue|null
  145. */
  146. public function getTextsAvailable($language null)
  147. {
  148.     if (!$language) {
  149.         try {
  150.             $locale \Pimcore::getContainer()->get("pimcore.locale")->getLocale();
  151.             if (\Pimcore\Tool::isValidLanguage($locale)) {
  152.                 $language = (string) $locale;
  153.             } else {
  154.                 throw new \Exception("Not supported language");
  155.             }
  156.         } catch (\Exception $e) {
  157.             $language \Pimcore\Tool::getDefaultLanguage();
  158.         }
  159.     }
  160.     $object $this;
  161.     $fieldDefinition $this->getClass()->getFieldDefinition("localizedfields")->getFieldDefinition("textsAvailable");
  162.     $data = new \Pimcore\Model\DataObject\Data\CalculatedValue('textsAvailable');
  163.     $data->setContextualData("localizedfield""localizedfields"null$languagenullnull$fieldDefinition);
  164.     $data \Pimcore\Model\DataObject\Service::getCalculatedFieldValue($object$data);
  165.     return $data;
  166. }
  167. /**
  168. * Set localizedfields - 
  169. * @param \Pimcore\Model\DataObject\Localizedfield|null $localizedfields
  170. * @return \Pimcore\Model\DataObject\Car
  171. */
  172. public function setLocalizedfields(?\Pimcore\Model\DataObject\Localizedfield $localizedfields)
  173. {
  174.     $inheritValues self::getGetInheritedValues();
  175.     self::setGetInheritedValues(false);
  176.     $hideUnpublished \Pimcore\Model\DataObject\Concrete::getHideUnpublished();
  177.     \Pimcore\Model\DataObject\Concrete::setHideUnpublished(false);
  178.     $currentData $this->getLocalizedfields();
  179.     \Pimcore\Model\DataObject\Concrete::setHideUnpublished($hideUnpublished);
  180.     self::setGetInheritedValues($inheritValues);
  181.     $this->markFieldDirty("localizedfields"true);
  182.     $this->localizedfields $localizedfields;
  183.     return $this;
  184. }
  185. /**
  186. * Set name - Name
  187. * @param string|null $name
  188. * @return \Pimcore\Model\DataObject\Car
  189. */
  190. public function setName (?string $name$language null)
  191. {
  192.     $isEqual false;
  193.     $this->getLocalizedfields()->setLocalizedValue("name"$name$language, !$isEqual);
  194.     return $this;
  195. }
  196. /**
  197. * Set description - Description
  198. * @param string|null $description
  199. * @return \Pimcore\Model\DataObject\Car
  200. */
  201. public function setDescription (?string $description$language null)
  202. {
  203.     $isEqual false;
  204.     $this->getLocalizedfields()->setLocalizedValue("description"$description$language, !$isEqual);
  205.     return $this;
  206. }
  207. /**
  208. * Set textsAvailable - Texts Available
  209. * @param \Pimcore\Model\DataObject\Data\CalculatedValue|null $textsAvailable
  210. * @return \Pimcore\Model\DataObject\Car
  211. */
  212. public function setTextsAvailable($textsAvailable$language null)
  213. {
  214.     return $this;
  215. }
  216. /**
  217. * Get series - Series
  218. * @return string|null
  219. */
  220. public function getSeries(): ?string
  221. {
  222.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  223.         $preValue $this->preGetValue("series");
  224.         if ($preValue !== null) {
  225.             return $preValue;
  226.         }
  227.     }
  228.     $data $this->series;
  229.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("series")->isEmpty($data)) {
  230.         try {
  231.             return $this->getValueFromParent("series");
  232.         } catch (InheritanceParentNotFoundException $e) {
  233.             // no data from parent available, continue ...
  234.         }
  235.     }
  236.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  237.         return $data->getPlain();
  238.     }
  239.     return $data;
  240. }
  241. /**
  242. * Set series - Series
  243. * @param string|null $series
  244. * @return \Pimcore\Model\DataObject\Car
  245. */
  246. public function setSeries(?string $series)
  247. {
  248.     $this->series $series;
  249.     return $this;
  250. }
  251. /**
  252. * Get manufacturer - Manufacturer
  253. * @return \Pimcore\Model\DataObject\Manufacturer|null
  254. */
  255. public function getManufacturer(): ?\Pimcore\Model\Element\AbstractElement
  256. {
  257.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  258.         $preValue $this->preGetValue("manufacturer");
  259.         if ($preValue !== null) {
  260.             return $preValue;
  261.         }
  262.     }
  263.     $data $this->getClass()->getFieldDefinition("manufacturer")->preGetData($this);
  264.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("manufacturer")->isEmpty($data)) {
  265.         try {
  266.             return $this->getValueFromParent("manufacturer");
  267.         } catch (InheritanceParentNotFoundException $e) {
  268.             // no data from parent available, continue ...
  269.         }
  270.     }
  271.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  272.         return $data->getPlain();
  273.     }
  274.     return $data;
  275. }
  276. /**
  277. * Set manufacturer - Manufacturer
  278. * @param \Pimcore\Model\DataObject\Manufacturer $manufacturer
  279. * @return \Pimcore\Model\DataObject\Car
  280. */
  281. public function setManufacturer(?\Pimcore\Model\Element\AbstractElement $manufacturer)
  282. {
  283.     /** @var \Pimcore\Model\DataObject\ClassDefinition\Data\ManyToOneRelation $fd */
  284.     $fd $this->getClass()->getFieldDefinition("manufacturer");
  285.     $inheritValues self::getGetInheritedValues();
  286.     self::setGetInheritedValues(false);
  287.     $hideUnpublished \Pimcore\Model\DataObject\Concrete::getHideUnpublished();
  288.     \Pimcore\Model\DataObject\Concrete::setHideUnpublished(false);
  289.     $currentData $this->getManufacturer();
  290.     \Pimcore\Model\DataObject\Concrete::setHideUnpublished($hideUnpublished);
  291.     self::setGetInheritedValues($inheritValues);
  292.     $isEqual $fd->isEqual($currentData$manufacturer);
  293.     if (!$isEqual) {
  294.         $this->markFieldDirty("manufacturer"true);
  295.     }
  296.     $this->manufacturer $fd->preSetData($this$manufacturer);
  297.     return $this;
  298. }
  299. /**
  300. * Get bodyStyle - Body Style
  301. * @return \Pimcore\Model\Asset\Image | \Pimcore\Model\DataObject\BodyStyle|null
  302. */
  303. public function getBodyStyle(): ?\Pimcore\Model\Element\AbstractElement
  304. {
  305.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  306.         $preValue $this->preGetValue("bodyStyle");
  307.         if ($preValue !== null) {
  308.             return $preValue;
  309.         }
  310.     }
  311.     $data $this->getClass()->getFieldDefinition("bodyStyle")->preGetData($this);
  312.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("bodyStyle")->isEmpty($data)) {
  313.         try {
  314.             return $this->getValueFromParent("bodyStyle");
  315.         } catch (InheritanceParentNotFoundException $e) {
  316.             // no data from parent available, continue ...
  317.         }
  318.     }
  319.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  320.         return $data->getPlain();
  321.     }
  322.     return $data;
  323. }
  324. /**
  325. * Set bodyStyle - Body Style
  326. * @param \Pimcore\Model\Asset\Image | \Pimcore\Model\DataObject\BodyStyle $bodyStyle
  327. * @return \Pimcore\Model\DataObject\Car
  328. */
  329. public function setBodyStyle(?\Pimcore\Model\Element\AbstractElement $bodyStyle)
  330. {
  331.     /** @var \Pimcore\Model\DataObject\ClassDefinition\Data\ManyToOneRelation $fd */
  332.     $fd $this->getClass()->getFieldDefinition("bodyStyle");
  333.     $inheritValues self::getGetInheritedValues();
  334.     self::setGetInheritedValues(false);
  335.     $hideUnpublished \Pimcore\Model\DataObject\Concrete::getHideUnpublished();
  336.     \Pimcore\Model\DataObject\Concrete::setHideUnpublished(false);
  337.     $currentData $this->getBodyStyle();
  338.     \Pimcore\Model\DataObject\Concrete::setHideUnpublished($hideUnpublished);
  339.     self::setGetInheritedValues($inheritValues);
  340.     $isEqual $fd->isEqual($currentData$bodyStyle);
  341.     if (!$isEqual) {
  342.         $this->markFieldDirty("bodyStyle"true);
  343.     }
  344.     $this->bodyStyle $fd->preSetData($this$bodyStyle);
  345.     return $this;
  346. }
  347. /**
  348. * Get photo - Photo
  349. * @return \Pimcore\Model\Asset\Image[] | \Pimcore\Model\DataObject\Car[]
  350. */
  351. public function getPhoto(): array
  352. {
  353.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  354.         $preValue $this->preGetValue("photo");
  355.         if ($preValue !== null) {
  356.             return $preValue;
  357.         }
  358.     }
  359.     $data $this->getClass()->getFieldDefinition("photo")->preGetData($this);
  360.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("photo")->isEmpty($data)) {
  361.         try {
  362.             return $this->getValueFromParent("photo");
  363.         } catch (InheritanceParentNotFoundException $e) {
  364.             // no data from parent available, continue ...
  365.         }
  366.     }
  367.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  368.         return $data->getPlain();
  369.     }
  370.     return $data;
  371. }
  372. /**
  373. * Set photo - Photo
  374. * @param \Pimcore\Model\Asset\Image[] | \Pimcore\Model\DataObject\Car[] $photo
  375. * @return \Pimcore\Model\DataObject\Car
  376. */
  377. public function setPhoto(?array $photo)
  378. {
  379.     /** @var \Pimcore\Model\DataObject\ClassDefinition\Data\ManyToManyRelation $fd */
  380.     $fd $this->getClass()->getFieldDefinition("photo");
  381.     $inheritValues self::getGetInheritedValues();
  382.     self::setGetInheritedValues(false);
  383.     $hideUnpublished \Pimcore\Model\DataObject\Concrete::getHideUnpublished();
  384.     \Pimcore\Model\DataObject\Concrete::setHideUnpublished(false);
  385.     $currentData $this->getPhoto();
  386.     \Pimcore\Model\DataObject\Concrete::setHideUnpublished($hideUnpublished);
  387.     self::setGetInheritedValues($inheritValues);
  388.     $isEqual $fd->isEqual($currentData$photo);
  389.     if (!$isEqual) {
  390.         $this->markFieldDirty("photo"true);
  391.     }
  392.     $this->photo $fd->preSetData($this$photo);
  393.     return $this;
  394. }
  395. /**
  396. * Get carClass - Class
  397. * @return string|null
  398. */
  399. public function getCarClass(): ?string
  400. {
  401.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  402.         $preValue $this->preGetValue("carClass");
  403.         if ($preValue !== null) {
  404.             return $preValue;
  405.         }
  406.     }
  407.     $data $this->carClass;
  408.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("carClass")->isEmpty($data)) {
  409.         try {
  410.             return $this->getValueFromParent("carClass");
  411.         } catch (InheritanceParentNotFoundException $e) {
  412.             // no data from parent available, continue ...
  413.         }
  414.     }
  415.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  416.         return $data->getPlain();
  417.     }
  418.     return $data;
  419. }
  420. /**
  421. * Set carClass - Class
  422. * @param string|null $carClass
  423. * @return \Pimcore\Model\DataObject\Car
  424. */
  425. public function setCarClass(?string $carClass)
  426. {
  427.     $this->carClass $carClass;
  428.     return $this;
  429. }
  430. /**
  431. * Get productionYear - Production Year
  432. * @return int|null
  433. */
  434. public function getProductionYear(): ?int
  435. {
  436.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  437.         $preValue $this->preGetValue("productionYear");
  438.         if ($preValue !== null) {
  439.             return $preValue;
  440.         }
  441.     }
  442.     $data $this->productionYear;
  443.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("productionYear")->isEmpty($data)) {
  444.         try {
  445.             return $this->getValueFromParent("productionYear");
  446.         } catch (InheritanceParentNotFoundException $e) {
  447.             // no data from parent available, continue ...
  448.         }
  449.     }
  450.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  451.         return $data->getPlain();
  452.     }
  453.     return $data;
  454. }
  455. /**
  456. * Set productionYear - Production Year
  457. * @param int|null $productionYear
  458. * @return \Pimcore\Model\DataObject\Car
  459. */
  460. public function setProductionYear(?int $productionYear)
  461. {
  462.     /** @var \Pimcore\Model\DataObject\ClassDefinition\Data\Numeric $fd */
  463.     $fd $this->getClass()->getFieldDefinition("productionYear");
  464.     $this->productionYear $fd->preSetData($this$productionYear);
  465.     return $this;
  466. }
  467. /**
  468. * Get color - Color
  469. * @return string[]|null
  470. */
  471. public function getColor(): ?array
  472. {
  473.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  474.         $preValue $this->preGetValue("color");
  475.         if ($preValue !== null) {
  476.             return $preValue;
  477.         }
  478.     }
  479.     $data $this->color;
  480.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("color")->isEmpty($data)) {
  481.         try {
  482.             return $this->getValueFromParent("color");
  483.         } catch (InheritanceParentNotFoundException $e) {
  484.             // no data from parent available, continue ...
  485.         }
  486.     }
  487.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  488.         return $data->getPlain();
  489.     }
  490.     return $data;
  491. }
  492. /**
  493. * Set color - Color
  494. * @param string[]|null $color
  495. * @return \Pimcore\Model\DataObject\Car
  496. */
  497. public function setColor(?array $color)
  498. {
  499.     $this->color $color;
  500.     return $this;
  501. }
  502. /**
  503. * Get country - Country
  504. * @return string|null
  505. */
  506. public function getCountry(): ?string
  507. {
  508.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  509.         $preValue $this->preGetValue("country");
  510.         if ($preValue !== null) {
  511.             return $preValue;
  512.         }
  513.     }
  514.     $data $this->country;
  515.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("country")->isEmpty($data)) {
  516.         try {
  517.             return $this->getValueFromParent("country");
  518.         } catch (InheritanceParentNotFoundException $e) {
  519.             // no data from parent available, continue ...
  520.         }
  521.     }
  522.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  523.         return $data->getPlain();
  524.     }
  525.     return $data;
  526. }
  527. /**
  528. * Set country - Country
  529. * @param string|null $country
  530. * @return \Pimcore\Model\DataObject\Car
  531. */
  532. public function setCountry(?string $country)
  533. {
  534.     $this->country $country;
  535.     return $this;
  536. }
  537. /**
  538. * Get categories - Categories
  539. * @return \Pimcore\Model\DataObject\Category[]
  540. */
  541. public function getCategories(): array
  542. {
  543.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  544.         $preValue $this->preGetValue("categories");
  545.         if ($preValue !== null) {
  546.             return $preValue;
  547.         }
  548.     }
  549.     $data $this->getClass()->getFieldDefinition("categories")->preGetData($this);
  550.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("categories")->isEmpty($data)) {
  551.         try {
  552.             return $this->getValueFromParent("categories");
  553.         } catch (InheritanceParentNotFoundException $e) {
  554.             // no data from parent available, continue ...
  555.         }
  556.     }
  557.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  558.         return $data->getPlain();
  559.     }
  560.     return $data;
  561. }
  562. /**
  563. * Set categories - Categories
  564. * @param \Pimcore\Model\DataObject\Category[] $categories
  565. * @return \Pimcore\Model\DataObject\Car
  566. */
  567. public function setCategories(?array $categories)
  568. {
  569.     /** @var \Pimcore\Model\DataObject\ClassDefinition\Data\ManyToManyObjectRelation $fd */
  570.     $fd $this->getClass()->getFieldDefinition("categories");
  571.     $inheritValues self::getGetInheritedValues();
  572.     self::setGetInheritedValues(false);
  573.     $hideUnpublished \Pimcore\Model\DataObject\Concrete::getHideUnpublished();
  574.     \Pimcore\Model\DataObject\Concrete::setHideUnpublished(false);
  575.     $currentData $this->getCategories();
  576.     \Pimcore\Model\DataObject\Concrete::setHideUnpublished($hideUnpublished);
  577.     self::setGetInheritedValues($inheritValues);
  578.     $isEqual $fd->isEqual($currentData$categories);
  579.     if (!$isEqual) {
  580.         $this->markFieldDirty("categories"true);
  581.     }
  582.     $this->categories $fd->preSetData($this$categories);
  583.     return $this;
  584. }
  585. /**
  586. * Get gallery - Gallery
  587. * @return \Pimcore\Model\DataObject\Data\ImageGallery|null
  588. */
  589. public function getGallery(): ?\Pimcore\Model\DataObject\Data\ImageGallery
  590. {
  591.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  592.         $preValue $this->preGetValue("gallery");
  593.         if ($preValue !== null) {
  594.             return $preValue;
  595.         }
  596.     }
  597.     $data $this->gallery;
  598.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("gallery")->isEmpty($data)) {
  599.         try {
  600.             return $this->getValueFromParent("gallery");
  601.         } catch (InheritanceParentNotFoundException $e) {
  602.             // no data from parent available, continue ...
  603.         }
  604.     }
  605.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  606.         return $data->getPlain();
  607.     }
  608.     return $data;
  609. }
  610. /**
  611. * Set gallery - Gallery
  612. * @param \Pimcore\Model\DataObject\Data\ImageGallery|null $gallery
  613. * @return \Pimcore\Model\DataObject\Car
  614. */
  615. public function setGallery(?\Pimcore\Model\DataObject\Data\ImageGallery $gallery)
  616. {
  617.     $this->gallery $gallery;
  618.     return $this;
  619. }
  620. /**
  621. * Get genericImages - Generic Images
  622. * @return \Pimcore\Model\DataObject\Data\ImageGallery|null
  623. */
  624. public function getGenericImages(): ?\Pimcore\Model\DataObject\Data\ImageGallery
  625. {
  626.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  627.         $preValue $this->preGetValue("genericImages");
  628.         if ($preValue !== null) {
  629.             return $preValue;
  630.         }
  631.     }
  632.     $data $this->genericImages;
  633.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("genericImages")->isEmpty($data)) {
  634.         try {
  635.             return $this->getValueFromParent("genericImages");
  636.         } catch (InheritanceParentNotFoundException $e) {
  637.             // no data from parent available, continue ...
  638.         }
  639.     }
  640.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  641.         return $data->getPlain();
  642.     }
  643.     return $data;
  644. }
  645. /**
  646. * Set genericImages - Generic Images
  647. * @param \Pimcore\Model\DataObject\Data\ImageGallery|null $genericImages
  648. * @return \Pimcore\Model\DataObject\Car
  649. */
  650. public function setGenericImages(?\Pimcore\Model\DataObject\Data\ImageGallery $genericImages)
  651. {
  652.     $this->genericImages $genericImages;
  653.     return $this;
  654. }
  655. /**
  656. * @return \Pimcore\Model\DataObject\Car\Attributes
  657. */
  658. public function getAttributes(): ?\Pimcore\Model\DataObject\Objectbrick
  659. {
  660.     $data $this->attributes;
  661.     if (!$data) {
  662.         if (\Pimcore\Tool::classExists("\\Pimcore\\Model\\DataObject\\Car\\Attributes")) {
  663.             $data = new \Pimcore\Model\DataObject\Car\Attributes($this"attributes");
  664.             $this->attributes $data;
  665.         } else {
  666.             return null;
  667.         }
  668.     }
  669.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  670.         $preValue $this->preGetValue("attributes");
  671.         if ($preValue !== null) {
  672.             return $preValue;
  673.         }
  674.     }
  675.     return $data;
  676. }
  677. /**
  678. * Set attributes - Attributes
  679. * @param \Pimcore\Model\DataObject\Objectbrick|null $attributes
  680. * @return \Pimcore\Model\DataObject\Car
  681. */
  682. public function setAttributes(?\Pimcore\Model\DataObject\Objectbrick $attributes)
  683. {
  684.     /** @var \Pimcore\Model\DataObject\ClassDefinition\Data\Objectbricks $fd */
  685.     $fd $this->getClass()->getFieldDefinition("attributes");
  686.     $this->attributes $fd->preSetData($this$attributes);
  687.     return $this;
  688. }
  689. /**
  690. * @return \Pimcore\Model\DataObject\Car\SaleInformation
  691. */
  692. public function getSaleInformation(): ?\Pimcore\Model\DataObject\Objectbrick
  693. {
  694.     $data $this->saleInformation;
  695.     if (!$data) {
  696.         if (\Pimcore\Tool::classExists("\\Pimcore\\Model\\DataObject\\Car\\SaleInformation")) {
  697.             $data = new \Pimcore\Model\DataObject\Car\SaleInformation($this"saleInformation");
  698.             $this->saleInformation $data;
  699.         } else {
  700.             return null;
  701.         }
  702.     }
  703.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  704.         $preValue $this->preGetValue("saleInformation");
  705.         if ($preValue !== null) {
  706.             return $preValue;
  707.         }
  708.     }
  709.     return $data;
  710. }
  711. /**
  712. * Set saleInformation - Sale Information
  713. * @param \Pimcore\Model\DataObject\Objectbrick|null $saleInformation
  714. * @return \Pimcore\Model\DataObject\Car
  715. */
  716. public function setSaleInformation(?\Pimcore\Model\DataObject\Objectbrick $saleInformation)
  717. {
  718.     /** @var \Pimcore\Model\DataObject\ClassDefinition\Data\Objectbricks $fd */
  719.     $fd $this->getClass()->getFieldDefinition("saleInformation");
  720.     $this->saleInformation $fd->preSetData($this$saleInformation);
  721.     return $this;
  722. }
  723. /**
  724. * Get location - Location
  725. * @return \Pimcore\Model\DataObject\Data\GeoCoordinates|null
  726. */
  727. public function getLocation(): ?\Pimcore\Model\DataObject\Data\GeoCoordinates
  728. {
  729.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  730.         $preValue $this->preGetValue("location");
  731.         if ($preValue !== null) {
  732.             return $preValue;
  733.         }
  734.     }
  735.     $data $this->location;
  736.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("location")->isEmpty($data)) {
  737.         try {
  738.             return $this->getValueFromParent("location");
  739.         } catch (InheritanceParentNotFoundException $e) {
  740.             // no data from parent available, continue ...
  741.         }
  742.     }
  743.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  744.         return $data->getPlain();
  745.     }
  746.     return $data;
  747. }
  748. /**
  749. * Set location - Location
  750. * @param \Pimcore\Model\DataObject\Data\GeoCoordinates|null $location
  751. * @return \Pimcore\Model\DataObject\Car
  752. */
  753. public function setLocation(?\Pimcore\Model\DataObject\Data\GeoCoordinates $location)
  754. {
  755.     $this->location $location;
  756.     return $this;
  757. }
  758. /**
  759. * Get attributesAvailable - Attributes Available
  760. * @return \Pimcore\Model\DataObject\Data\CalculatedValue|null
  761. */
  762. public function getAttributesAvailable()
  763. {
  764.     $data = new \Pimcore\Model\DataObject\Data\CalculatedValue('attributesAvailable');
  765.     $data->setContextualData("object"nullnullnull);
  766.     $object $this;
  767.     $data \Pimcore\Model\DataObject\Service::getCalculatedFieldValue($object$data);
  768.     return $data;
  769. }
  770. /**
  771. * Set attributesAvailable - Attributes Available
  772. * @param \Pimcore\Model\DataObject\Data\CalculatedValue|null $attributesAvailable
  773. * @return \Pimcore\Model\DataObject\Car
  774. */
  775. public function setAttributesAvailable($attributesAvailable)
  776. {
  777.     return $this;
  778. }
  779. /**
  780. * Get saleInformationAvailable - Sale Information Available
  781. * @return \Pimcore\Model\DataObject\Data\CalculatedValue|null
  782. */
  783. public function getSaleInformationAvailable()
  784. {
  785.     $data = new \Pimcore\Model\DataObject\Data\CalculatedValue('saleInformationAvailable');
  786.     $data->setContextualData("object"nullnullnull);
  787.     $object $this;
  788.     $data \Pimcore\Model\DataObject\Service::getCalculatedFieldValue($object$data);
  789.     return $data;
  790. }
  791. /**
  792. * Set saleInformationAvailable - Sale Information Available
  793. * @param \Pimcore\Model\DataObject\Data\CalculatedValue|null $saleInformationAvailable
  794. * @return \Pimcore\Model\DataObject\Car
  795. */
  796. public function setSaleInformationAvailable($saleInformationAvailable)
  797. {
  798.     return $this;
  799. }
  800. /**
  801. * Get imagesAvailable - Images Available
  802. * @return \Pimcore\Model\DataObject\Data\CalculatedValue|null
  803. */
  804. public function getImagesAvailable()
  805. {
  806.     $data = new \Pimcore\Model\DataObject\Data\CalculatedValue('imagesAvailable');
  807.     $data->setContextualData("object"nullnullnull);
  808.     $object $this;
  809.     $data \Pimcore\Model\DataObject\Service::getCalculatedFieldValue($object$data);
  810.     return $data;
  811. }
  812. /**
  813. * Set imagesAvailable - Images Available
  814. * @param \Pimcore\Model\DataObject\Data\CalculatedValue|null $imagesAvailable
  815. * @return \Pimcore\Model\DataObject\Car
  816. */
  817. public function setImagesAvailable($imagesAvailable)
  818. {
  819.     return $this;
  820. }
  821. /**
  822. * Get objectType - Object Type
  823. * @return string|null
  824. */
  825. public function getObjectType(): ?string
  826. {
  827.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  828.         $preValue $this->preGetValue("objectType");
  829.         if ($preValue !== null) {
  830.             return $preValue;
  831.         }
  832.     }
  833.     $data $this->objectType;
  834.     if (\Pimcore\Model\DataObject::doGetInheritedValues() && $this->getClass()->getFieldDefinition("objectType")->isEmpty($data)) {
  835.         try {
  836.             return $this->getValueFromParent("objectType");
  837.         } catch (InheritanceParentNotFoundException $e) {
  838.             // no data from parent available, continue ...
  839.         }
  840.     }
  841.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  842.         return $data->getPlain();
  843.     }
  844.     return $data;
  845. }
  846. /**
  847. * Set objectType - Object Type
  848. * @param string|null $objectType
  849. * @return \Pimcore\Model\DataObject\Car
  850. */
  851. public function setObjectType(?string $objectType)
  852. {
  853.     $this->objectType $objectType;
  854.     return $this;
  855. }
  856. /**
  857. * Get urlSlug - UrlSlug
  858. * @return \Pimcore\Model\DataObject\Data\UrlSlug[]
  859. */
  860. public function getUrlSlug(): ?array
  861. {
  862.     if ($this instanceof PreGetValueHookInterface && !\Pimcore::inAdmin()) {
  863.         $preValue $this->preGetValue("urlSlug");
  864.         if ($preValue !== null) {
  865.             return $preValue;
  866.         }
  867.     }
  868.     $data $this->getClass()->getFieldDefinition("urlSlug")->preGetData($this);
  869.     if ($data instanceof \Pimcore\Model\DataObject\Data\EncryptedField) {
  870.         return $data->getPlain();
  871.     }
  872.     return $data;
  873. }
  874. /**
  875. * Set urlSlug - UrlSlug
  876. * @param \Pimcore\Model\DataObject\Data\UrlSlug[] $urlSlug
  877. * @return \Pimcore\Model\DataObject\Car
  878. */
  879. public function setUrlSlug(?array $urlSlug)
  880. {
  881.     /** @var \Pimcore\Model\DataObject\ClassDefinition\Data\UrlSlug $fd */
  882.     $fd $this->getClass()->getFieldDefinition("urlSlug");
  883.     $inheritValues self::getGetInheritedValues();
  884.     self::setGetInheritedValues(false);
  885.     $hideUnpublished \Pimcore\Model\DataObject\Concrete::getHideUnpublished();
  886.     \Pimcore\Model\DataObject\Concrete::setHideUnpublished(false);
  887.     $currentData $this->getUrlSlug();
  888.     \Pimcore\Model\DataObject\Concrete::setHideUnpublished($hideUnpublished);
  889.     self::setGetInheritedValues($inheritValues);
  890.     $isEqual $fd->isEqual($currentData$urlSlug);
  891.     if (!$isEqual) {
  892.         $this->markFieldDirty("urlSlug"true);
  893.     }
  894.     $this->urlSlug $fd->preSetData($this$urlSlug);
  895.     return $this;
  896. }
  897. }