Esempio n. 1
0
 public function isExistProductAction(Ess_M2ePro_Model_Listing_Other $listingOtherInstance, $action, array $params = array())
 {
     $newListingsOtherId = $listingOtherInstance->getId();
     $params['status_changer'] = Ess_M2ePro_Model_Listing_Product::STATUS_CHANGER_SYNCH;
     if (!isset($this->_actionsProducts[$newListingsOtherId])) {
         return false;
     }
     if ($this->_actionsProducts[$newListingsOtherId]['action'] != $action) {
         return false;
     }
     $tempExistItem = $this->_actionsProducts[$newListingsOtherId];
     foreach ($params as $tempParamKey => $tempParamValue) {
         if (!isset($tempExistItem['params'][$tempParamKey])) {
             return false;
         }
         if (is_array($tempExistItem['params'][$tempParamKey]) && is_array($tempParamValue)) {
             foreach ($tempParamValue as $tempParamKeyTwo => $tempParamValueTwo) {
                 if (!isset($tempExistItem['params'][$tempParamKey][$tempParamKeyTwo])) {
                     return false;
                 }
                 if ($tempExistItem['params'][$tempParamKey][$tempParamKeyTwo] != $tempParamValueTwo) {
                     return false;
                 }
             }
             continue;
         }
         if ($tempExistItem['params'][$tempParamKey] != $tempParamValue) {
             return false;
         }
     }
     return true;
 }
Esempio n. 2
0
 public function logListingOtherMessage(Ess_M2ePro_Model_Listing_Other $listingOther, array $messageData, $priority = Ess_M2ePro_Model_Log_Abstract::PRIORITY_MEDIUM)
 {
     if ($this->storeMode) {
         $this->storedMessages[] = array('type' => $this->initLogType($messageData[Ess_M2ePro_Model_Connector_Protocol::MESSAGE_TYPE_KEY]), 'text' => $messageData[Ess_M2ePro_Model_Connector_Protocol::MESSAGE_TEXT_KEY]);
         return;
     }
     $this->getListingOtherLog()->addProductMessage($listingOther->getId(), $this->initiator, $this->actionId, $this->action, $messageData[Ess_M2ePro_Model_Connector_Protocol::MESSAGE_TEXT_KEY], $this->initLogType($messageData[Ess_M2ePro_Model_Connector_Protocol::MESSAGE_TYPE_KEY]), $priority);
 }
Esempio n. 3
0
 /**
  * @return Ess_M2ePro_Model_Ebay_Listing_Other_Action_Locker
  */
 protected function getLocker()
 {
     if (is_null($this->locker)) {
         $this->locker = Mage::getModel('M2ePro/Ebay_Listing_Other_Action_Locker');
         $this->locker->setListingOtherId($this->otherListing->getId());
     }
     return $this->locker;
 }
Esempio n. 4
0
 protected function eventAfterProcess()
 {
     $lockItem = Mage::getModel('M2ePro/LockItem');
     $lockItem->setNick(Ess_M2ePro_Helper_Component_Ebay::NICK . '_listing_other_' . $this->otherListing->getId());
     $lockItem->remove();
 }
 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);
 }
 private function logOtherListingMessage(Ess_M2ePro_Model_Listing_Other $otherListing, $action, $oldValue, $newValue)
 {
     // M2ePro_TRANSLATIONS
     // From [%from%] to [%to%].
     $log = Mage::getModel('M2ePro/Listing_Other_Log');
     $log->setComponentMode($otherListing->getComponentMode());
     $log->addProductMessage($otherListing->getId(), Ess_M2ePro_Helper_Data::INITIATOR_EXTENSION, NULL, $action, Mage::getModel('M2ePro/Log_Abstract')->encodeDescription('From [%from%] to [%to%]', array('from' => $oldValue, 'to' => $newValue)), Ess_M2ePro_Model_Log_Abstract::TYPE_NOTICE, Ess_M2ePro_Model_Log_Abstract::PRIORITY_LOW);
 }
 private function logOtherListingMessage(Ess_M2ePro_Model_Listing_Other $otherListing, $action, $oldValue, $newValue, $messagePostfix = '')
 {
     // M2ePro_TRANSLATIONS
     // From [%from%] to [%to%].
     $log = Mage::getModel('M2ePro/Listing_Other_Log');
     $log->setComponentMode($otherListing->getComponentMode());
     $oldValue = strlen($oldValue) > 150 ? substr($oldValue, 0, 150) . ' ...' : $oldValue;
     $newValue = strlen($newValue) > 150 ? substr($newValue, 0, 150) . ' ...' : $newValue;
     $messagePostfix = trim(trim($messagePostfix), '.');
     if (!empty($messagePostfix)) {
         $messagePostfix = ' ' . $messagePostfix;
     }
     $log->addProductMessage($otherListing->getId(), Ess_M2ePro_Helper_Data::INITIATOR_EXTENSION, NULL, $action, Mage::getModel('M2ePro/Log_Abstract')->encodeDescription('From [%from%] to [%to%]' . $messagePostfix . '.', array('!from' => $oldValue, '!to' => $newValue)), Ess_M2ePro_Model_Log_Abstract::TYPE_NOTICE, Ess_M2ePro_Model_Log_Abstract::PRIORITY_LOW);
 }