Пример #1
0
 public function getRequest()
 {
     $request = new Varien_Object();
     $request->setQty($this->proxyItem->getQty());
     // grouped and downloadable products doesn't have options
     if ($this->proxyItem->getProduct()->getTypeId() == Mage_Catalog_Model_Product_Type::TYPE_GROUPED || $this->proxyItem->getProduct()->getTypeId() == Mage_Downloadable_Model_Product_Type::TYPE_DOWNLOADABLE) {
         return $request;
     }
     /** @var $magentoProduct Ess_M2ePro_Model_Magento_Product */
     $magentoProduct = Mage::getModel('M2ePro/Magento_Product')->setProduct($this->getProduct());
     $options = $this->proxyItem->getOptions();
     if (empty($options)) {
         return $request;
     }
     if ($magentoProduct->isSimpleType()) {
         $request->setOptions($options);
     } else {
         if ($magentoProduct->isBundleType()) {
             $request->setBundleOption($options);
         } else {
             if ($magentoProduct->isConfigurableType()) {
                 $request->setSuperAttribute($options);
             }
         }
     }
     return $request;
 }
Пример #2
0
 public function equals(Ess_M2ePro_Model_Order_Item_Proxy $that)
 {
     if (is_null($this->getProduct()->getId()) || is_null($that->getProduct()->getId())) {
         return false;
     }
     if ($this->getProduct()->getId() != $that->getProduct()->getId()) {
         return false;
     }
     $thisVariations = $this->getLowerCasedVariation();
     $thatVariations = $that->getLowerCasedVariation();
     $thisVariationsKeys = array_keys($thisVariations);
     $thatVariationsKeys = array_keys($thatVariations);
     $thisVariationValues = array_values($thisVariations);
     $thatVariationValues = array_values($thatVariations);
     if (count($thisVariations) == count($thatVariations) && count(array_diff($thisVariationsKeys, $thatVariationsKeys)) <= 0 && count(array_diff($thisVariationValues, $thatVariationValues)) <= 0) {
         return true;
     }
     return false;
 }