Esempio n. 1
0
 /**
  * Perform actions before object save
  *
  * @param \Smart2Pay\GlobalPay\Model\ConfiguredMethods $object
  * @return $this
  * @SuppressWarnings(PHPMD.UnusedFormalParameter)
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if ($existing_arr = $this->checkMethodCountryID($object->getMethodID(), $object->getCountryID())) {
         $this->getConnection()->delete($this->getMainTable(), $this->getConnection()->quoteInto($this->getIdFieldName() . '=?', $existing_arr[$this->getIdFieldName()]));
     }
     return parent::_beforeSave($object);
 }
Esempio n. 2
0
 /**
  * Validate website code before object save
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if (!preg_match('/^[a-z]+[a-z0-9_]*$/', $object->getCode())) {
         throw new \Magento\Framework\Exception\LocalizedException(__('Website code may only contain letters (a-z), numbers (0-9) or underscore (_),' . ' and the first character must be a letter.'));
     }
     return parent::_beforeSave($object);
 }
Esempio n. 3
0
 /**
  * Perform actions before object save
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 public function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if ($date = $object->getDateFrom()) {
         $object->setDateFrom($this->dateTime->formatDate($date));
     } else {
         $object->setDateFrom(null);
     }
     if ($date = $object->getDateTo()) {
         $object->setDateTo($this->dateTime->formatDate($date));
     } else {
         $object->setDateTo(null);
     }
     if (!is_null($object->getDateFrom()) && !is_null($object->getDateTo()) && (new \DateTime($object->getDateFrom()))->getTimestamp() > (new \DateTime($object->getDateTo()))->getTimestamp()) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The start date can\'t follow the end date.'));
     }
     $check = $this->_checkIntersection($object->getStoreId(), $object->getDateFrom(), $object->getDateTo(), $object->getId());
     if ($check) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The date range for this design change overlaps another design change for the specified store.'));
     }
     if ($object->getDateFrom() === null) {
         $object->setDateFrom(new \Zend_Db_Expr('null'));
     }
     if ($object->getDateTo() === null) {
         $object->setDateTo(new \Zend_Db_Expr('null'));
     }
     parent::_beforeSave($object);
 }
 /**
  * Prepare rule's active "from" and "to" dates
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  */
 public function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     $this->resolveDate($object, 'from_date');
     $this->resolveDate($object, 'to_date');
     parent::_beforeSave($object);
     return $this;
 }
Esempio n. 5
0
 /**
  * Perform actions before object save
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return \Magento\Framework\Model\ResourceModel\Db\AbstractDb
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if (!$object->getSortOrder()) {
         $object->setSortOrder($this->_getMaxSortOrder($object) + 1);
     }
     return parent::_beforeSave($object);
 }
Esempio n. 6
0
 /**
  * Process post data before saving
  *
  * @param \Smart2Pay\GlobalPay\Model\Method $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if ($this->checkObjectMethodID($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('Method ID already exists in database.'));
     }
     return parent::_beforeSave($object);
 }
Esempio n. 7
0
 /**
  * Process post data before saving
  *
  * @param \Smart2Pay\GlobalPay\Model\Transaction $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if (!$object->getMethodId()) {
         throw new \Magento\Framework\Exception\LocalizedException(__('Please provide a method id.'));
     }
     if (!$object->getMerchantTransactionId()) {
         throw new \Magento\Framework\Exception\LocalizedException(__('Please provide merchant transaction id.'));
     }
     if ($current_id = $this->checkMerchantTransactionID($object->getMerchantTransactionId()) and $object->getID() != $current_id) {
         throw new \Magento\Framework\Exception\LocalizedException(__('Merchant transaction id already exists in database.'));
     }
     $time = time();
     if (!$object->getPaymentID()) {
         $object->setPaymentID(0);
     }
     if (!$object->getSiteId()) {
         $object->setSiteId(0);
     }
     if (!$object->getPaymentStatus()) {
         $object->setPaymentStatus(0);
     }
     if (!$object->getCreated()) {
         $object->setCreated($time);
     }
     $object->setUpdated($time);
     return parent::_beforeSave($object);
 }
Esempio n. 8
0
 /**
  * Process testimonial data before saving
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if (!$object->getId() || !$object->getDate()) {
         $object->setDate($this->_date->gmtDate());
     }
     return parent::_beforeSave($object);
 }
Esempio n. 9
0
 /**
  * {@inheritdoc}
  */
 protected function _beforeSave(AbstractModel $tag)
 {
     /** @var \Mirasvit\Blog\Model\Tag $tag */
     if (!$tag->getData('url_key')) {
         $tag->setData('url_key', $this->filter->translitUrl($tag->getName()));
     }
     return parent::_beforeSave($tag);
 }
Esempio n. 10
0
 /**
  * Process post data before saving
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if (!$this->isValidNewsblock($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('Please fill out newsblock fields.'));
     }
     $object->setUpdateTime($this->_date->gmtDate());
     return parent::_beforeSave($object);
 }
Esempio n. 11
0
 /**
  * Before saving the object, add the created or updated times
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if ($object->isObjectNew() && !$object->hasCreationTime()) {
         $object->setCreationTime($this->_date->gmtDate());
     }
     $object->setUpdateTime($this->_date->gmtDate());
     return parent::_beforeSave($object);
 }
 /**
  * Process category data before saving
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if (!$this->isValidPageIdentifier($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The category URL key contains capital letters or disallowed symbols.'));
     }
     if ($this->isNumericPageIdentifier($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The category URL key cannot be made of only numbers.'));
     }
     return parent::_beforeSave($object);
 }
Esempio n. 13
0
 /**
  * Convert array to comma separated value
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if (!$object->getId()) {
         $this->_checkUnique($object);
     }
     if (is_array($object->getValue())) {
         $object->setValue(join(',', $object->getValue()));
     }
     return parent::_beforeSave($object);
 }
Esempio n. 14
0
 /**
  * Perform actions before object save
  *
  * @param AbstractModel $object
  * @return $this
  */
 public function _beforeSave(AbstractModel $object)
 {
     if (!$object->getExpirationDate()) {
         $object->setExpirationDate(null);
     } elseif ($object->getExpirationDate() instanceof \DateTimeInterface) {
         $object->setExpirationDate($object->getExpirationDate()->format('Y-m-d H:i:s'));
     }
     // maintain single primary coupon per rule
     $object->setIsPrimary($object->getIsPrimary() ? 1 : null);
     return parent::_beforeSave($object);
 }
Esempio n. 15
0
 /**
  * Set date of last update
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return \Magento\Framework\Model\ResourceModel\Db\AbstractDb
  */
 protected function _beforeSave(AbstractModel $object)
 {
     /* @var $object \ClassyLlama\AvaTax\Model\Queue */
     $date = $this->dateTime->gmtDate();
     if ($object->isObjectNew() && !$object->getCreatedAt()) {
         $object->setCreatedAt($date);
     } else {
         $object->setUpdatedAt($date);
     }
     return parent::_beforeSave($object);
 }
Esempio n. 16
0
 /**
  * Process post data before saving.
  *
  * @param AbstractModel $object
  *
  * @return $this
  * @throws LocalizedException
  */
 public function _beforeSave(AbstractModel $object)
 {
     if (!$this->isValidPostUrlKey($object)) {
         throw new LocalizedException(__('The post URL key contains capital letters or disallowed symbols.'));
     }
     if ($object->isObjectNew() && !$object->hasCreatedAt()) {
         $object->setCreatedAt($this->_date->gmtDate());
     }
     $object->setUpdatedAt($this->_date->gmtDate());
     return parent::_beforeSave($object);
 }
Esempio n. 17
0
 /**
  * Process post data before saving
  *
  * @param \Smart2Pay\GlobalPay\Model\Country $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if (!$object->getCode()) {
         throw new \Magento\Framework\Exception\LocalizedException(__('Please provide country code.'));
     }
     if (!$object->getName()) {
         throw new \Magento\Framework\Exception\LocalizedException(__('Please provide country name.'));
     }
     if ($this->checkCode($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('Country code already exists in database.'));
     }
     return parent::_beforeSave($object);
 }
 /**
  * Method to run before save
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     // format height
     $height = $object->getContentHeight();
     $height = $this->filterManager->stripTags($height);
     if (!$height) {
         $height = '';
     }
     if ($height && preg_match('/[0-9]$/', $height)) {
         $height .= 'px';
     }
     $object->setContentHeight($height);
     return parent::_beforeSave($object);
 }
Esempio n. 19
0
 /**
  * Process post data before saving
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if (!$this->isValidPostUrlKey($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The post URL key contains capital letters or disallowed symbols.'));
     }
     if ($this->isNumericPostUrlKey($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The post URL key cannot be made of only numbers.'));
     }
     if ($object->isObjectNew() && !$object->hasCreationTime()) {
         $object->setCreationTime($this->_date->gmtDate());
     }
     $object->setUpdateTime($this->_date->gmtDate());
     return parent::_beforeSave($object);
 }
Esempio n. 20
0
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if ($this->isEmpty($object, 'fullname')) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The name cannot be empty'));
     }
     if (!$this->isEmail($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The email address contains disallowed characters or is not well formed!'));
     }
     if ($this->isEmpty($object, 'birthdate')) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The birthdate cannot be empty'));
     }
     if ($this->isEmpty($object, 'address')) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The address cannot be empty'));
     }
     return parent::_beforeSave($object);
 }
Esempio n. 21
0
 /**
  * Process category data before saving
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     foreach (['custom_theme_from', 'custom_theme_to'] as $field) {
         $value = $object->getData($field) ?: null;
         $object->setData($field, $this->dateTime->formatDate($value));
     }
     $identifierGenerator = \Magento\Framework\App\ObjectManager::getInstance()->create('Magefan\\Blog\\Model\\ResourceModel\\PageIdentifierGenerator');
     $identifierGenerator->generate($object);
     if (!$this->isValidPageIdentifier($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The category URL key contains capital letters or disallowed symbols.'));
     }
     if ($this->isNumericPageIdentifier($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The category URL key cannot be made of only numbers.'));
     }
     return parent::_beforeSave($object);
 }
Esempio n. 22
0
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     $origData = $object->getOrigData();
     if (empty($origData)) {
         $object->setData('create_date', $this->getHelper('Data')->getCurrentGmtDate());
     }
     $object->setData('update_date', $this->getHelper('Data')->getCurrentGmtDate());
     $result = parent::_beforeSave($object);
     // TODO test it on magento 2.0
     // fix for Varien\Db\Adapter\Pdo\Mysql::prepareColumnValue
     // an empty string cannot be saved -> NULL is saved instead
     // for Magento version > 1.6.x.x
     foreach ($object->getData() as $key => $value) {
         $value === '' && $object->setData($key, new \Zend_Db_Expr("''"));
     }
     return $result;
 }
Esempio n. 23
0
 /**
  * @param \Magento\Framework\Model\AbstractModel $object
  *
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     if (!$this->isSlugEmpty($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('Something wrong with slug'));
     }
     if (!$this->isSlugValid($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('This post slug contain disallowed symbols.'));
     }
     if ($this->isSlugNumeric($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('Post slug can\'t be made of only numbers'));
     }
     if ($object->isObjectNew() && !$object->hasCreatedAt()) {
         $object->setCreatedAt($this->_date->gmtDate());
     }
     $object->setUpdatedAt($this->_date->gmtDate());
     return parent::_beforeSave($object);
 }
 /**
  * Prepare rule's active "from" and "to" dates
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  */
 public function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     $fromDate = $object->getFromDate();
     if ($fromDate instanceof \DateTime) {
         $object->setFromDate($fromDate->format('Y-m-d H:i:s'));
     } elseif (!is_string($fromDate) || empty($fromDate)) {
         $object->setFromDate(null);
     }
     $toDate = $object->getToDate();
     if ($toDate instanceof \DateTime) {
         $object->setToDate($toDate->format('Y-m-d H:i:s'));
     } elseif (!is_string($toDate) || empty($toDate)) {
         $object->setToDate(null);
     }
     parent::_beforeSave($object);
     return $this;
 }
 /**
  * Perform actions before object save
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     $belongsToQuoteItem = $object->hasData(CommentInterface::QUOTE_ITEM_ID_COLUMN);
     $belongsToOrderItem = $object->hasData(CommentInterface::ORDER_ITEM_ID_COLUMN);
     $hasText = $object->hasData(CommentInterface::TEXT_COLUMN);
     // A comment should either be attached to a quote item or order item...
     if (!$belongsToQuoteItem || !$belongsToOrderItem) {
         throw new \Magento\Framework\Exception\LocalizedException(__('A comment should belong to either a quote item or order item.'));
     }
     // ...but not to both
     if ($belongsToQuoteItem && $belongsToOrderItem) {
         throw new \Magento\Framework\Exception\LocalizedException(__('A comment cannot belong to both a quote item and order item.'));
     }
     if (!$hasText) {
         throw new \Magento\Framework\Exception\LocalizedException(__('A comment requirescomp text.'));
     }
     return parent::_beforeSave($object);
 }
Esempio n. 26
0
 /**
  * Process tag data before saving
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     $object->setTitle(trim(strtolower($object->getTitle())));
     if (!$object->getId()) {
         $tag = $object->getCollection()->addFieldToFilter('title', $object->getTitle())->setPageSize(1)->getFirstItem();
         if ($tag->getId()) {
             throw new \Magento\Framework\Exception\LocalizedException(__('The tag is already exist.'));
         }
     }
     $identifierGenerator = \Magento\Framework\App\ObjectManager::getInstance()->create('Magefan\\Blog\\Model\\ResourceModel\\PageIdentifierGenerator');
     $identifierGenerator->generate($object);
     if (!$this->isValidPageIdentifier($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The tag URL key contains capital letters or disallowed symbols.'));
     }
     if ($this->isNumericPageIdentifier($object)) {
         throw new \Magento\Framework\Exception\LocalizedException(__('The tag URL key cannot be made of only numbers.'));
     }
     return parent::_beforeSave($object);
 }
Esempio n. 27
0
 /**
  * Process post data before saving
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     //        if (!$this->isValidPostUrlKey($object)) {
     //            throw new \Magento\Framework\Exception\LocalizedException(
     //            __('The post URL key contains capital letters or disallowed symbols.')
     //            );
     //        }
     //
     //        if ($this->isNumericPostUrlKey($object)) {
     //            throw new \Magento\Framework\Exception\LocalizedException(
     //            __('The post URL key cannot be made of only numbers.')
     //            );
     //        }
     //        $object->setData('photo_url', 'fefefefewfergrtgtrh');
     //        throw new \Magento\Framework\Exception\LocalizedException(
     //        __('Alert!! '.$object->getData('photo_url'))
     //        );
     if ($object->isObjectNew() && !$object->hasCreationTime()) {
         $object->setCreationTime($this->_date->gmtDate());
     }
     $object->setUpdateTime($this->_date->gmtDate());
     return parent::_beforeSave($object);
 }
Esempio n. 28
0
 /**
  * Set updated_at automatically before saving
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @return $this
  */
 public function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     $object->setUpdatedAt($this->_dateTime->formatDate(time()));
     return parent::_beforeSave($object);
 }
 /**
  * Validate attribute data before save
  *
  * @param EntityAttribute|AbstractModel $object
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(AbstractModel $object)
 {
     $frontendLabel = $object->getFrontendLabel();
     if (is_array($frontendLabel)) {
         if (!isset($frontendLabel[0]) || $frontendLabel[0] === null || $frontendLabel[0] == '') {
             throw new \Magento\Framework\Exception\LocalizedException(__('The storefront label is not defined.'));
         }
         $object->setFrontendLabel($frontendLabel[0])->setStoreLabels($frontendLabel);
     }
     /**
      * @todo need use default source model of entity type !!!
      */
     if (!$object->getId()) {
         if ($object->getFrontendInput() == 'select') {
             $object->setSourceModel('Magento\\Eav\\Model\\Entity\\Attribute\\Source\\Table');
         }
     }
     return parent::_beforeSave($object);
 }
 /**
  * Process post data before saving
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  *
  * @return $this
  * @throws \Magento\Framework\Exception\LocalizedException
  */
 protected function _beforeSave(\Magento\Framework\Model\AbstractModel $object)
 {
     return parent::_beforeSave($object);
 }