예제 #1
0
 /**
  * Before model save
  *
  * @param Mage_Core_Model_Abstract $object
  * @return Enterprise_CatalogEvent_Model_Mysql4_Event
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (strlen($object->getSortOrder()) === 0) {
         $object->setSortOrder(null);
     }
     return parent::_beforeSave($object);
 }
예제 #2
0
 /**
  * Perform actions before object save
  *
  * @param Mage_Core_Model_Abstract $object
  * @return Mage_Core_Model_Mysql4_Website
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (!preg_match('/^[a-z]+[a-z0-9_]*$/', $object->getCode())) {
         AO::throwException(AO::helper('core')->__('Website code should contain only letters (a-z), numbers (0-9) or underscore(_), first character should be a letter'));
     }
     return parent::_beforeSave($object);
 }
예제 #3
0
 /**
  * Processing object before save data
  * Update app_code as Store + Device
  *
  * @param Mage_Core_Model_Abstract $object
  * @return Mage_Core_Model_Abstract
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (!$object->getId()) {
         $object->setCode($object->getCodePrefix());
     }
     return parent::_beforeSave($object);
 }
 /**
  * Perform actions before object save
  *
  * @param Mage_Core_Model_Abstract $object
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (!$object->getSortOrder()) {
         $object->setSortOrder($this->_getMaxSortOrder($object) + 1);
     }
     return parent::_beforeSave($object);
 }
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if ($object->isObjectNew() && !$object->hasCreatedAt()) {
         $object->setCreatedAt(Mage::getSingleton('core/date')->gmtDate());
     }
     return parent::_beforeSave($object);
 }
예제 #6
0
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     $connection = $this->_getWriteAdapter();
     $select = $connection->select()->from($this->getMainTable(), 'key_id')->where('string=?', $object->getString())->where('store_id=?', 0);
     $object->setId($connection->fetchOne($select));
     return parent::_beforeSave($object);
 }
예제 #7
0
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     $object->validate();
     $object->setUpdatedAt(Mage::getSingleton('core/date')->gmtDate());
     if ($object->getAttributes() && is_array($object->getAttributes())) {
         $object->setAttributesSerialized(serialize($object->getAttributes()));
     }
     if ($object->getProperties() && is_array($object->getProperties())) {
         $object->setPropertiesSerialized(serialize($object->getProperties()));
     }
     if ($object->getData('attributes_serialized') != $object->getOrigData('attributes_serialized')) {
         $object->setStatus(2);
     }
     if ($object->getData('properties_serialized') != $object->getOrigData('properties_serialized')) {
         $object->setStatus(2);
     }
     if (!$object->getId() && !$object->getIndexInstance()->isAllowMultiInstance()) {
         //check if this index already exists
         $collection = Mage::getModel('searchindex/index')->getCollection()->addFieldToFilter('index_code', $object->getIndexCode());
         if ($collection->count() > 0) {
             Mage::throwException('The index for current content type already exists');
         }
     }
     return parent::_beforeSave($object);
 }
예제 #8
0
 public function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     $format = Mage::app()->getLocale()->getDateFormat(Mage_Core_Model_Locale::FORMAT_TYPE_SHORT);
     if ($date = $object->getDateFrom()) {
         $date = Mage::app()->getLocale()->date($date, $format, null, false);
         $object->setDateFrom($date->toString(Varien_Date::DATETIME_INTERNAL_FORMAT));
     } else {
         $object->setDateFrom(null);
     }
     if ($date = $object->getDateTo()) {
         $date = Mage::app()->getLocale()->date($date, $format, null, false);
         $object->setDateTo($date->toString(Varien_Date::DATETIME_INTERNAL_FORMAT));
     } else {
         $object->setDateTo(null);
     }
     if (!is_null($object->getDateFrom()) && !is_null($object->getDateTo()) && strtotime($object->getDateFrom()) > strtotime($object->getDateTo())) {
         Mage::throwException(Mage::helper('core')->__('Start date can\'t be greater than end date'));
     }
     $check = $this->_checkIntersection($object->getStoreId(), $object->getDateFrom(), $object->getDateTo(), $object->getId());
     if ($check) {
         Mage::throwException(Mage::helper('core')->__('Your design change for the specified store intersects with another one, please specify another date range'));
     }
     if (is_null($object->getDateFrom())) {
         $object->setDateFrom(new Zend_Db_Expr('null'));
     }
     if (is_null($object->getDateTo())) {
         $object->setDateTo(new Zend_Db_Expr('null'));
     }
     parent::_beforeSave($object);
 }
예제 #9
0
 /**
  * Perform operations before object save
  *
  * @param Mage_Cms_Model_Block $object
  * @return Creativestyle_CheckoutByAmazon_Model_Mysql4_Log_Abstract
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (!$object->getId()) {
         $object->setCreationTime(Mage::getSingleton('core/date')->gmtDate());
     }
     return parent::_beforeSave($object);
 }
예제 #10
0
 /**
  * Logic performed before saving the model
  *
  * @param Mage_Core_Model_Abstract $object
  * @return Trio_Wizard_Model_Mysql4_Wizard
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (!$object->getGroupId()) {
         $object->setGroupId(null);
     }
     return parent::_beforeSave($object);
 }
예제 #11
0
 /**
  * Call-back function
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     $url = $object->getUrl();
     $url = trim($url);
     $object->setUrl($url);
     return parent::_beforeSave($object);
 }
예제 #12
0
 /**
  * @param Mage_Core_Model_Abstract $object
  *
  * @return $this|Mage_Core_Model_Resource_Db_Abstract
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (is_array($object->getTypes())) {
         $object->setTypes(implode(',', $object->getTypes()));
     }
     return parent::_beforeSave($object);
 }
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if ($object->isObjectNew() && !$object->hasCreatedAt()) {
         $object->setCreatedAt(Mage::getSingleton('core/date')->gmtDate());
     }
     $object->setUpdatedAt(Mage::getSingleton('core/date')->gmtDate());
     if (is_array($object->getAttr())) {
         $object->setAttr(serialize($object->getAttr()));
     }
     if (!$object->getChildrenCount()) {
         $object->setChildrenCount(0);
     }
     if ($object->getLevel() === null) {
         $object->setLevel(1);
     }
     if (!$object->getId()) {
         $object->setPosition($this->_getMaxPosition($object->getPath()) + 1);
         $path = explode('/', $object->getPath());
         $level = count($path);
         $object->setLevel($level + 1);
         if ($object->getParentId() == null) {
             $object->setLevel(1);
         }
         $object->setPath($object->getPath() . '/');
         $toUpdateChild = explode('/', $object->getPath());
         $this->_getWriteAdapter()->update($this->getTable('item'), array('children_count' => new Zend_Db_Expr('children_count + 1')), array('item_id IN(?)' => $toUpdateChild));
     }
     if ($object->getParentId() == 0) {
         $object->setParentId(null);
     }
     return parent::_beforeSave($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);
 }
예제 #15
0
 /**
  * Sets the created and modified date attributes.
  *
  * @param Mage_Core_Model_Abstract $object
  * @return Litle_Palorus_Model_Mysql4_Vault
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (!$object->getId()) {
         $object->setCreated(now());
     }
     $object->setUpdated(now());
     return parent::_beforeSave($object);
 }
예제 #16
0
 /**
  * Before save callback, set <created_at> and <updated_at> values
  *
  * @param Mage_Core_Model_Abstract $object
  * @return void
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (!$object->getCreatedAt()) {
         $object->setCreatedAt($this->formatDate(time()));
     }
     $object->setUpdatedAt($this->formatDate(time()));
     parent::_beforeSave($object);
 }
예제 #17
0
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (!$object->getPerformedAt()) {
         $object->setPerformedAt($this->formatDate(time()));
     }
     parent::_beforeSave($object);
     return $this;
 }
예제 #18
0
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     /** @var  Mirasvit_Helpdesk_Model_Status $object */
     if (!$object->getId()) {
         $object->setCreatedAt(Mage::getSingleton('core/date')->gmtDate());
     }
     $object->setUpdatedAt(Mage::getSingleton('core/date')->gmtDate());
     return parent::_beforeSave($object);
 }
예제 #19
0
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if ($object->isObjectNew() && !$object->hasCreatedAt()) {
         $object->setCreatedAt(Mage::getSingleton('core/date')->gmtDate());
     }
     $object->setUpdatedAt(Mage::getSingleton('core/date')->gmtDate());
     Mage::helper('feedexport/format')->preparePostData($object);
     return parent::_beforeSave($object);
 }
 /**
  * Process category data before saving
  *
  * @param Mage_Core_Model_Abstract $object
  * @return Zeon_Faq_Model_Mysql4_Category
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     // modify create / update dates
     if ($object->isObjectNew() && !$object->hasCreationTime()) {
         $object->setCreationTime(Mage::getSingleton('core/date')->gmtDate());
     }
     $object->setUpdateTime(Mage::getSingleton('core/date')->gmtDate());
     return parent::_beforeSave($object);
 }
예제 #21
0
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     $urlKey = trim($object->getData('url_key'));
     if ($urlKey == '') {
         $urlKey = $object->getData('title');
     }
     $object->setData('url_key', Mage::helper('clnews')->formatUrlKey($urlKey));
     return parent::_beforeSave($object);
 }
예제 #22
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);
 }
예제 #23
0
 public function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     $object->setFromDate($this->formatDate($object->getFromDate()));
     $object->setToDate($this->formatDate($object->getToDate()));
     if (!$object->getDiscountQty()) {
         $object->setDiscountQty(new Zend_Db_Expr('NULL'));
     }
     parent::_beforeSave($object);
 }
 /**
  * Sets the default credit card information
  *
  * @param Mage_Core_Model_Abstract $object
  * @return Mage_Core_Model_Resource_Db_Abstract
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     parent::_beforeSave($object);
     if ($object->getflagAsDefault()) {
         $adapter = $this->_getWriteAdapter();
         $adapter->query($adapter->quoteInto("UPDATE {$this->getMainTable()} SET is_default = 0 WHERE customer_id = ?", $object->getCustomerId()));
         $object->setIsDefault(true);
     }
     return $this;
 }
예제 #25
0
 /**
  * @param Mage_Core_Model_Abstract $object
  *
  * @return $this|Mage_Core_Model_Resource_Db_Abstract
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (is_array($object->getAdminRoleIds())) {
         $object->setAdminRoleIds(implode(',', $object->getAdminRoleIds()));
     }
     if (is_array($object->getDepartmentIds())) {
         $object->setDepartmentIds(implode(',', $object->getDepartmentIds()));
     }
     return parent::_beforeSave($object);
 }
 /**
  * Process data before saving
  *
  * @param Mage_Core_Model_Abstract $object
  * @return Optimiseweb_Banners_Model_Mysql4_Banners
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (!$this->isValidIdentifier($object)) {
         Mage::throwException(Mage::helper('banners')->__('The Identifier contains capital letters or disallowed symbols.'));
     }
     if ($this->isNumericIdentifier($object)) {
         Mage::throwException(Mage::helper('banners')->__('The Identifier cannot consist only of numbers.'));
     }
     return parent::_beforeSave($object);
 }
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     //        if (!$object->getId()) {
     //            $object->setStoreId($this->getStoreId());
     //        }
     if (!$this->isUniqueGroup($object)) {
         Mage::throwException(Mage::helper('customoptions')->__("Options Title '%s' already exist", $object->getTitle()));
     }
     return parent::_beforeSave($object);
 }
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if (!$object->getLevel()) {
         $object->getLevel(Mirasvit_MstCore_Model_Logger::LOG_LEVEL_NOTICE);
     }
     if ($object->isObjectNew() && !$object->hasCreatedAt()) {
         $object->setCreatedAt(Mage::getSingleton('core/date')->gmtDate());
     }
     return parent::_beforeSave($object);
 }
예제 #29
0
 /**
  * Call-back function
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     if ($object->getEffect()) {
         $effect = implode(',', $object->getEffect());
     } else {
         $effect = 'random';
     }
     $object->setEffect($effect);
     return parent::_beforeSave($object);
 }
예제 #30
0
 /**
  * Before save processing
  *
  * @param Mage_Core_Model_Abstract $object
  */
 protected function _beforeSave(Mage_Core_Model_Abstract $object)
 {
     $staging = $object->getStaging();
     if ($staging instanceof Enterprise_Staging_Model_Staging) {
         if ($staging->getId()) {
             $object->setStagingId($staging->getId());
         }
     }
     return parent::_beforeSave($object);
 }