Exemplo n.º 1
0
 public function addProductFromOther(Ess_M2ePro_Model_Listing_Other $listingOtherProduct, $checkingMode = false, $checkHasProduct = true)
 {
     if (!$listingOtherProduct->getProductId()) {
         return false;
     }
     $productId = $listingOtherProduct->getProductId();
     $result = $this->getParentObject()->addProduct($productId, $checkingMode, $checkHasProduct);
     if ($checkingMode) {
         return $result;
     }
     if (!$result instanceof Ess_M2ePro_Model_Listing_Product) {
         return false;
     }
     $listingProduct = $result;
     $listingProduct->getChildObject()->getBuyItem()->setData('store_id', $this->getParentObject()->getStoreId())->save();
     $dataForUpdate = array('general_id' => $listingOtherProduct->getChildObject()->getGeneralId(), 'sku' => $listingOtherProduct->getChildObject()->getSku(), 'online_price' => $listingOtherProduct->getChildObject()->getOnlinePrice(), 'online_qty' => $listingOtherProduct->getChildObject()->getOnlineQty(), 'condition' => $listingOtherProduct->getChildObject()->getCondition(), 'condition_note' => $listingOtherProduct->getChildObject()->getConditionNote(), 'shipping_standard_rate' => $listingOtherProduct->getChildObject()->getShippingStandardRate(), 'shipping_expedited_mode' => $listingOtherProduct->getChildObject()->getShippingExpeditedMode(), 'shipping_expedited_rate' => $listingOtherProduct->getChildObject()->getShippingExpeditedRate(), 'status' => $listingOtherProduct->getStatus(), 'status_changer' => $listingOtherProduct->getStatusChanger());
     $listingProduct->addData($dataForUpdate)->save();
     return $listingProduct;
 }
Exemplo n.º 2
0
 public function addProductFromOther(Ess_M2ePro_Model_Listing_Other $listingOtherProduct, $checkingMode = false, $checkHasProduct = true)
 {
     if (!$listingOtherProduct->getProductId()) {
         return false;
     }
     $productId = $listingOtherProduct->getProductId();
     $result = $this->getParentObject()->addProduct($productId, $checkingMode, $checkHasProduct);
     if ($checkingMode) {
         return $result;
     }
     if (!$result instanceof Ess_M2ePro_Model_Listing_Product) {
         return false;
     }
     $listingProduct = $result;
     $listingProduct->getChildObject()->getPlayItem()->setData('store_id', $this->getParentObject()->getStoreId())->save();
     $dataForUpdate = array('general_id' => $listingOtherProduct->getChildObject()->getGeneralId(), 'play_listing_id' => $listingOtherProduct->getChildObject()->getPlayListingId(), 'link_info' => $listingOtherProduct->getChildObject()->getLinkInfo(), 'general_id_type' => $listingOtherProduct->getChildObject()->getGeneralIdType(), 'sku' => $listingOtherProduct->getChildObject()->getSku(), 'online_price_gbr' => $listingOtherProduct->getChildObject()->getOnlinePriceGbr(), 'online_price_euro' => $listingOtherProduct->getChildObject()->getOnlinePriceEuro(), 'online_shipping_price_gbr' => 0, 'online_shipping_price_euro' => 0, 'online_qty' => $listingOtherProduct->getChildObject()->getOnlineQty(), 'condition' => $listingOtherProduct->getChildObject()->getCondition(), 'condition_note' => $listingOtherProduct->getChildObject()->getConditionNote(), 'dispatch_to' => $listingOtherProduct->getChildObject()->getDispatchTo(), 'dispatch_from' => $listingOtherProduct->getChildObject()->getDispatchFrom(), 'status' => $listingOtherProduct->getStatus(), 'status_changer' => $listingOtherProduct->getStatusChanger());
     $listingProduct->addData($dataForUpdate)->save();
     return $listingProduct;
 }
Exemplo n.º 3
0
 /**
  * @param Ess_M2ePro_Model_Listing_Other $listingOtherProduct
  * @param bool $checkingMode
  * @param bool $checkHasProduct
  * @return bool|Ess_M2ePro_Model_Listing_Product
  * @throws Ess_M2ePro_Model_Exception_Logic
  */
 public function addProductFromOther(Ess_M2ePro_Model_Listing_Other $listingOtherProduct, $checkingMode = false, $checkHasProduct = true)
 {
     if (!$listingOtherProduct->getProductId()) {
         return false;
     }
     $productId = $listingOtherProduct->getProductId();
     $result = $this->getParentObject()->addProduct($productId, $checkingMode, $checkHasProduct);
     if ($checkingMode) {
         return $result;
     }
     if (!$result instanceof Ess_M2ePro_Model_Listing_Product) {
         return false;
     }
     $listingProduct = $result;
     /** @var Ess_M2ePro_Model_Amazon_Listing_Product $amazonListingProduct */
     $amazonListingProduct = $listingProduct->getChildObject();
     $variationManager = $amazonListingProduct->getVariationManager();
     if ($variationManager->isRelationParentType()) {
         $variationManager->switchModeToAnother();
     }
     $amazonListingProduct->getAmazonItem()->setData('store_id', $this->getParentObject()->getStoreId())->save();
     /** @var Ess_M2ePro_Model_Amazon_Listing_Other $amazonListingOther */
     $amazonListingOther = $listingOtherProduct->getChildObject();
     $dataForUpdate = array('general_id' => $amazonListingOther->getGeneralId(), 'sku' => $amazonListingOther->getSku(), 'online_price' => $amazonListingOther->getOnlinePrice(), 'online_qty' => $amazonListingOther->getOnlineQty(), 'is_afn_channel' => (int) $amazonListingOther->isAfnChannel(), 'is_isbn_general_id' => (int) $amazonListingOther->isIsbnGeneralId(), 'status' => $listingOtherProduct->getStatus(), 'status_changer' => $listingOtherProduct->getStatusChanger());
     $listingProduct->addData($dataForUpdate)->save();
     return $listingProduct;
 }
Exemplo n.º 4
0
 public function addProductFromOther(Ess_M2ePro_Model_Listing_Other $listingOtherProduct, $checkingMode = false, $checkHasProduct = true)
 {
     if (!$listingOtherProduct->getProductId()) {
         return false;
     }
     $productId = $listingOtherProduct->getProductId();
     $result = $this->getParentObject()->addProduct($productId, $checkingMode, true);
     if ($checkingMode) {
         return $result;
     }
     if (!$result instanceof Ess_M2ePro_Model_Listing_Product) {
         return false;
     }
     $listingProduct = $result;
     /** @var $collection Mage_Core_Model_Mysql4_Collection_Abstract */
     $collection = Mage::getModel('M2ePro/Ebay_Item')->getCollection()->addFieldToFilter('account_id', $listingOtherProduct->getAccount()->getId())->addFieldToFilter('item_id', $listingOtherProduct->getChildObject()->getItemId());
     $ebayItem = $collection->getFirstItem();
     $ebayItem->setData('store_id', $this->getParentObject()->getStoreId())->save();
     $dataForUpdate = array('ebay_item_id' => $ebayItem->getId(), 'online_sku' => $listingOtherProduct->getChildObject()->getSku(), 'online_title' => $listingOtherProduct->getChildObject()->getTitle(), 'online_buyitnow_price' => $listingOtherProduct->getChildObject()->getOnlinePrice(), 'online_qty' => $listingOtherProduct->getChildObject()->getOnlineQty(), 'online_qty_sold' => $listingOtherProduct->getChildObject()->getOnlineQtySold(), 'online_bids' => $listingOtherProduct->getChildObject()->getOnlineBids(), 'start_date' => $listingOtherProduct->getChildObject()->getStartDate(), 'end_date' => $listingOtherProduct->getChildObject()->getEndDate(), 'status' => $listingOtherProduct->getStatus(), 'status_changer' => $listingOtherProduct->getStatusChanger());
     $listingProduct->addData($dataForUpdate)->save();
     return $listingProduct;
 }
 private function modifyAndLogListingOther(Ess_M2ePro_Model_Listing_Other $listingOther, $status, $duplicateItemId = null)
 {
     /** @var Ess_M2ePro_Model_Listing_Other_Log $logModel */
     $logModel = Mage::getModel('M2ePro/Listing_Other_Log');
     $logModel->setComponentMode(Ess_M2ePro_Helper_Component_Ebay::NICK);
     $logActionId = $logModel->getNextActionId();
     $statusLogMessage = $this->getStatusLogMessage($listingOther->getStatus(), $status);
     $logModel->addProductMessage($listingOther->getId(), Ess_M2ePro_Helper_Data::INITIATOR_EXTENSION, $logActionId, Ess_M2ePro_Model_Listing_Other_Log::ACTION_CHANNEL_CHANGE, $statusLogMessage, Ess_M2ePro_Model_Log_Abstract::TYPE_SUCCESS, Ess_M2ePro_Model_Log_Abstract::PRIORITY_LOW);
     $additionalData = $listingOther->getAdditionalData();
     unset($additionalData['last_failed_action_data']);
     $listingOther->addData(array('status' => $status, 'additional_data' => json_encode($additionalData)))->save();
     if (is_null($duplicateItemId)) {
         return;
     }
     // M2ePro_TRANSLATIONS
     // Duplicated Item %item_id% was found and Stopped on eBay.
     $textToTranslate = 'Duplicated Item %item_id% was found and stopped on eBay.';
     $duplicateDeletedMessage = Mage::helper('M2ePro')->__($textToTranslate, $duplicateItemId);
     $logModel->addProductMessage($listingOther->getId(), Ess_M2ePro_Helper_Data::INITIATOR_EXTENSION, $logActionId, Ess_M2ePro_Model_Listing_Other_Log::ACTION_CHANNEL_CHANGE, $duplicateDeletedMessage, Ess_M2ePro_Model_Log_Abstract::TYPE_WARNING, Ess_M2ePro_Model_Log_Abstract::PRIORITY_LOW);
 }
Exemplo n.º 6
0
 public function addProductFromOther(Ess_M2ePro_Model_Listing_Other $listingOtherProduct)
 {
     if (!$listingOtherProduct->getProductId()) {
         return false;
     }
     $productId = $listingOtherProduct->getProductId();
     $listingProduct = $this->getParentObject()->addProduct($productId);
     if (!$listingProduct instanceof Ess_M2ePro_Model_Listing_Product) {
         return false;
     }
     $listingProduct->getChildObject()->getAmazonItem()->setData('store_id', $this->getParentObject()->getStoreId())->save();
     $dataForUpdate = array('general_id' => $listingOtherProduct->getChildObject()->getGeneralId(), 'sku' => $listingOtherProduct->getChildObject()->getSku(), 'online_price' => $listingOtherProduct->getChildObject()->getOnlinePrice(), 'online_qty' => $listingOtherProduct->getChildObject()->getOnlineQty(), 'is_afn_channel' => (int) $listingOtherProduct->getChildObject()->isAfnChannel(), 'is_isbn_general_id' => (int) $listingOtherProduct->getChildObject()->isIsbnGeneralId(), 'start_date' => $listingOtherProduct->getChildObject()->getStartDate(), 'end_date' => $listingOtherProduct->getChildObject()->getEndDate(), 'status' => $listingOtherProduct->getStatus(), 'status_changer' => $listingOtherProduct->getStatusChanger());
     $listingProduct->addData($dataForUpdate)->save();
     return $listingProduct;
 }
Exemplo n.º 7
0
 public function addProductFromOther(Ess_M2ePro_Model_Listing_Other $listingOtherProduct)
 {
     if (!$listingOtherProduct->getProductId()) {
         return false;
     }
     $productId = $listingOtherProduct->getProductId();
     $listingProduct = $this->getParentObject()->addProduct($productId);
     if (!$listingProduct instanceof Ess_M2ePro_Model_Listing_Product) {
         return false;
     }
     $ebayItem = Mage::getModel('M2ePro/Ebay_Item')->loadInstance($listingOtherProduct->getChildObject()->getItemId(), 'item_id');
     $ebayItem->setData('store_id', $this->getParentObject()->getStoreId())->save();
     $dataForUpdate = array('ebay_item_id' => $ebayItem->getId(), 'online_sku' => $listingOtherProduct->getChildObject()->getSku(), 'online_title' => $listingOtherProduct->getChildObject()->getTitle(), 'online_buyitnow_price' => $listingOtherProduct->getChildObject()->getOnlinePrice(), 'online_qty' => $listingOtherProduct->getChildObject()->getOnlineQty(), 'online_qty_sold' => $listingOtherProduct->getChildObject()->getOnlineQtySold(), 'online_bids' => $listingOtherProduct->getChildObject()->getOnlineBids(), 'online_start_date' => $listingOtherProduct->getChildObject()->getStartDate(), 'online_end_date' => $listingOtherProduct->getChildObject()->getEndDate(), 'status' => $listingOtherProduct->getStatus(), 'status_changer' => $listingOtherProduct->getStatusChanger(), 'is_m2epro_listed_item' => 0);
     $listingProduct->addData($dataForUpdate)->save();
     return $listingProduct;
 }