/**
  * Constructor
  *
  * @param array $data
  */
 public function __construct($data = array())
 {
     // fix photo inheritance
     // @todo: Check whether only one child can be inherit in "photos" property.
     if (isset($data['photos']) && count($data['photos']) == 1 && isset($data['photos']['photo'])) {
         $data['photos'] = $data['photos']['photo'];
     }
     parent::__construct($data);
 }
 /**
  * Constructor
  *
  * @param array $data
  */
 public function __construct($data = array())
 {
     foreach ($this->mappingClasses as $propName => &$mappingClassName) {
         if ($mappingClassName == 'Yandex\\Market\\Content\\Models\\Base\\MarketModel') {
             $realMappingClassName = MarketModel::getInstanceClassName($data[$propName]);
             $mappingClassName = $realMappingClassName;
         }
     }
     parent::__construct($data);
 }
Example #3
0
 /**
  * Add category to collection
  *
  * @param MarketModel|array $model
  *
  * @return Models
  */
 public function add($model)
 {
     if (is_array($model)) {
         // @note: add model type validation.
         $this->collection[] = MarketModel::getInstance($model);
     } elseif (is_object($model) && $model instanceof MarketModel) {
         $this->collection[] = $model;
     }
     return $this;
 }
 /**
  * Add category to collection
  *
  * @param ModelParent|ModelChild|ModelVisual|ModelSingle|ModelInfo|Offer|array $searchResult
  *
  * @return SearchResults
  */
 public function add($searchResult)
 {
     if (is_array($searchResult)) {
         if (isset($searchResult['model'])) {
             $this->collection[] = MarketModel::getInstance($searchResult['model']);
         }
         if (isset($searchResult['offer'])) {
             $this->collection[] = new Offer($searchResult['offer']);
         }
     } elseif (is_object($searchResult) && ($searchResult instanceof MarketModel || $searchResult instanceof Offer)) {
         $this->collection[] = $searchResult;
     }
     return $this;
 }