/**
  * Unserialize Varien_Object field in an object
  *
  * @param Mage_Core_Model_Abstract $object
  * @param string $field
  * @param mixed $defaultValue
  */
 protected function _unserializeField(Varien_Object $object, $field, $defaultValue = null)
 {
     if ($field != 'additional_info') {
         return parent::_unserializeField($object, $field, $defaultValue);
     }
     $value = $object->getData($field);
     if (empty($value)) {
         $object->setData($field, $defaultValue);
     } elseif (!is_array($value) && !is_object($value)) {
         $unserializedValue = false;
         try {
             $unserializedValue = Mage::helper('core/unserializeArray')->unserialize($value);
         } catch (Exception $e) {
             Mage::logException($e);
         }
         $object->setData($field, $unserializedValue);
     }
 }
Example #2
0
 /**
  * Save object data
  *
  * @param Mage_Core_Model_Abstract $object
  * @return Mage_Sales_Model_Resource_Order_Abstract
  */
 public function save(Mage_Core_Model_Abstract $object)
 {
     if (!$object->getForceObjectSave()) {
         parent::save($object);
     }
     return $this;
 }
Example #3
0
 /**
  * Load quote data by identifier without store
  *
  * @param Mage_Sales_Model_Quote $quote
  * @param int $quoteId
  * @return Mage_Sales_Model_Resource_Quote
  */
 public function loadByIdWithoutStore($quote, $quoteId)
 {
     $read = $this->_getReadAdapter();
     if ($read) {
         $select = parent::_getLoadSelect('entity_id', $quoteId, $quote);
         $data = $read->fetchRow($select);
         if ($data) {
             $quote->setData($data);
         }
     }
     $this->_afterLoad($quote);
     return $this;
 }