protected function resetQuote(Mage_Sales_Model_Quote $quote) { if (!$quote->getData('__applied_rules_reset__')) { $quote->setAppliedRuleIds(''); $quote->setData('__applied_rules_reset__', true); } }
/** * @param Mage_Sales_Model_Quote $quote */ protected function reactivateQuote(Mage_Sales_Model_Quote $quote) { if ($quote->getId()) { /* @note: Reset reserved_order_id, Magento up to and including version 1.7 has a bug in Mage_Sales_Model_Resource_Quote::isOrderIncrementIdUsed() * They cast the orderIncrementId to (int), which breaks the checkout/cart for all non-numerical incrementIds * (Causes Integrity Constraint Violation, because orderIncrementId already exists */ $quote->setData('reserved_order_id', ''); $quote->setIsActive(true); $quote->save(); } }
/** * Given a model and id load the information from the database into this model * * @param Mage_Sales_Model_Order|Mage_Sales_Model_Quote $oObject * @param Sitewards_DeliveryDate_Model_Quote|Sitewards_DeliveryDate_Model_Order $oModel */ protected function addInformationToObject($oObject, $oModel) { $aData = $oModel->getByObject($oObject->getId()); foreach ($aData as $sKey => $sValue) { $oObject->setData($sKey, $sValue); } }
/** * @param Mage_Sales_Model_Quote $quote * * @return mixed|Varien_Object */ public function isQuoteAdyenSubscription(Mage_Sales_Model_Quote $quote) { if (!$quote->hasData('_is_adyen_subscription')) { foreach ($quote->getAllItems() as $quoteItem) { /** @var Mage_Sales_Model_Quote_Item $quoteItem */ $additionalOptions = $quoteItem->getOptionByCode('additional_options'); if (!$additionalOptions) { continue; } $options = unserialize($additionalOptions->getValue()); foreach ($options as $option) { if ($option['code'] == 'adyen_subscription' && $option['option_value'] != 'none') { $quote->setData('_is_adyen_subscription', true); $quoteItem->setData('_adyen_subscription', $option['option_value']); return $quote->getData('_is_adyen_subscription'); } } } $quote->setData('_is_adyen_subscription', false); } return $quote->getData('_is_adyen_subscription'); }
/** * @param Mage_Sales_Model_Quote $quote * @param array $randomData */ protected function _anonymizeQuote($quote, $randomData) { /** @var $quote Mage_Sales_Model_Quote */ foreach ($this->_getQuoteMapping() as $quoteKey => $randomDataKey) { if (!$quote->getData($quoteKey)) { continue; } if (strlen($randomDataKey)) { $quote->setData($quoteKey, $randomData[$randomDataKey]); } else { $quote->setData($quoteKey, ''); } } $quote->getResource()->save($quote); $this->_anonymizedQuoteIds[] = $quote->getId(); }