/**
  * Perform operations after object load
  *
  * @param Mage_Core_Model_Abstract $object
  *
  * @return Mage_Core_Model_Resource_Db_Abstract
  */
 protected function _afterLoad(Mage_Core_Model_Abstract $object)
 {
     if ($object->getId()) {
         $stores = $this->lookupStoreIds($object->getId());
         $object->setStoreId($stores);
     }
     return parent::_afterLoad($object);
 }
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     $object->setStoreId($this->getStoreId());
     if (!$this->isUniqueCategory($object)) {
         Mage::throwException(Mage::helper('downloads')->__("Category '%s' already exist", $object->getTitle()));
     }
     return parent::_beforeSave($object);
 }
Пример #3
0
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     $date = new Zend_Date();
     if (!$object->getId()) {
         $object->setCreatedAt($date->toString(self::DATE_FORMAT));
         $object->setStoreId(Mage::app()->getStore()->getId());
     }
     parent::_beforeSave($object);
 }
 /**
  * Load store data after loading model
  *
  * @param Mage_Core_Model_Abstract $object
  * @return $this
  */
 protected function _afterLoad(Mage_Core_Model_Abstract $object)
 {
     if ($object->getId()) {
         $storeIds = $this->lookupStoreIds($object->getId());
         $object->setData('store_ids', $storeIds);
         if (!$this->isAdmin()) {
             $object->setStoreId(Mage::app()->getStore(true)->getId());
         }
     }
     return parent::_afterLoad($object);
 }
Пример #5
0
 /**
  * Function called after a model is loaded (but not when a collection of models are loaded)
  * If filters set, unserialize (convert to an array)
  *
  * @param Mage_Core_Model_Abstract $object
  * @return $this
  */
 protected function _afterLoad(Mage_Core_Model_Abstract $object)
 {
     if ($object->getId()) {
         $storeIds = $this->lookupStoreIds($object->getId());
         if ($this->isAdmin()) {
             $object->setData('store_id', $storeIds);
         } else {
             $object->setStoreId(Mage::app()->getStore(true)->getId());
             if (count($storeIds) === 1) {
                 if ($storeIds[0] != 0) {
                     $object->setStoreId((int) array_shift($storeIds));
                 }
             }
         }
     }
     if ($this->isAdmin()) {
         $this->_loadAdminData($object);
     }
     return parent::_afterLoad($object);
 }
 /**
  * Load store data after loading model
  *
  * @param Mage_Core_Model_Abstract $object
  * @return $this
  */
 protected function _afterLoad(Mage_Core_Model_Abstract $object)
 {
     if ($object->getId()) {
         $storeIds = $this->lookupStoreIds($object->getId());
         $object->setData('store_ids', $storeIds);
         if (!$this->isAdmin()) {
             $object->setStoreId(Mage::app()->getStore(true)->getId());
         }
         if ($object->getCustomFields()) {
             $customFields = @unserialize($object->getCustomFields());
             if (is_array($customFields)) {
                 foreach ($customFields as $field => $value) {
                     $object->setData($field, $value);
                 }
             }
         }
     }
     return parent::_afterLoad($object);
 }