Esempio n. 1
0
 /**
  * @overide
  * @return Df_YandexMarket_Model_System_Config_Backend_Conditions
  */
 protected function _beforeSave()
 {
     try {
         if ($this->validate()) {
             $this->getRule()->loadPost(array('conditions' => df_a(df_a($this->getPost(), 'rule'), 'conditions'), 'website_ids' => $this->getWebsiteIds()));
             $this->getRule()->setDataChanges(true);
             $this->getRule()->save();
             df_assert_between($this->getRule()->getId(), 1);
             $this->setValue($this->getRule()->getId());
         }
     } catch (Exception $e) {
         df_log_exception($e);
         rm_session()->addError($e->getMessage());
     }
     parent::_beforeSave();
     return $this;
 }
Esempio n. 2
0
 /**
  * @overide
  * @return Df_YandexMarket_Model_System_Config_Backend_Currency
  */
 protected function _beforeSave()
 {
     parent::_beforeSave();
     if (!in_array($this->getValue(), Df_YandexMarket_Model_System_Config_Source_Currency::getAllowedCurrencies())) {
         /** @var string $currencyName  */
         $currencyName = $this->getValue();
         try {
             /** @var Zend_Currency $result  */
             $currency = Mage::app()->getLocale()->currency($this->getValue());
             $currencyName = $currency->getName();
         } catch (Exception $e) {
         }
         df_error(sprintf('Яндекс.Маркет не допускает указанную Вами валюту «%s» в качестве основной валюты магазина.', $currencyName));
     } else {
         /** @var Df_Admin_Model_Config_BackendChecker_CurrencyIsSupported $checker */
         $checker = df_model(Df_Admin_Model_Config_BackendChecker_CurrencyIsSupported::getNameInMagentoFormat(), array(Df_Admin_Model_Config_BackendChecker_CurrencyIsSupported::PARAM__CURRENCY_CODE => $this->getValue(), Df_Admin_Model_Config_BackendChecker_CurrencyIsSupported::PARAM__BACKEND => $this));
         df_assert($checker instanceof Df_Admin_Model_Config_BackendChecker_CurrencyIsSupported);
         $checker->check();
     }
     return $this;
 }