Example #1
0
 public function has_value_for_configuration_changed($observer)
 {
     if (Mage::registry('osi_modify_event') == true) {
         Mage::unregister('osi_modify_event');
         Xtento_OrderStatusImport_Model_System_Config_Source_Order_Status::isEnabled();
     }
 }
Example #2
0
 protected function _afterSave()
 {
     $frequency = $this->getData('groups/import/fields/frequency/value');
     $customExpression = $this->getData('groups/import/fields/custom_cron/value');
     if (empty($customExpression)) {
         $frequencyMinute = Xtento_OrderStatusImport_Model_System_Config_Source_Cron_Frequency::CRON_MINUTE;
         $frequencyFiveMinutes = Xtento_OrderStatusImport_Model_System_Config_Source_Cron_Frequency::CRON_FIVEMINUTES;
         $frequencyTenMinutes = Xtento_OrderStatusImport_Model_System_Config_Source_Cron_Frequency::CRON_TENMINUTES;
         $frequencyTwentyMinutes = Xtento_OrderStatusImport_Model_System_Config_Source_Cron_Frequency::CRON_TWENTYMINUTES;
         $frequencyHalfHourly = Xtento_OrderStatusImport_Model_System_Config_Source_Cron_Frequency::CRON_HALFHOURLY;
         $frequencyHourly = Xtento_OrderStatusImport_Model_System_Config_Source_Cron_Frequency::CRON_HOURLY;
         $frequencyDaily = Xtento_OrderStatusImport_Model_System_Config_Source_Cron_Frequency::CRON_DAILY;
         $frequencyTwiceDaily = Xtento_OrderStatusImport_Model_System_Config_Source_Cron_Frequency::CRON_TWICEDAILY;
         $frequencyWeekly = Xtento_OrderStatusImport_Model_System_Config_Source_Cron_Frequency::CRON_WEEKLY;
         $minuteExpr = '0';
         $hourExpr = '0';
         $dayMonthExpr = '*';
         $monthExpr = '*';
         $dayWeekExpr = '*';
         if ($frequency == $frequencyMinute) {
             $minuteExpr = '*';
             $hourExpr = '*';
         }
         if ($frequency == $frequencyFiveMinutes) {
             $minuteExpr = '*/5';
             $hourExpr = '*';
         }
         if ($frequency == $frequencyTenMinutes) {
             $minuteExpr = '*/10';
             $hourExpr = '*';
         }
         if ($frequency == $frequencyTwentyMinutes) {
             $minuteExpr = '*/20';
             $hourExpr = '*';
         }
         if ($frequency == $frequencyHalfHourly) {
             $minuteExpr = '0,30';
             $hourExpr = '*';
         }
         if ($frequency == $frequencyHourly) {
             $hourExpr = '*';
         }
         if ($frequency == $frequencyDaily) {
             # Nothing to change
         }
         if ($frequency == $frequencyTwiceDaily) {
             $minuteExpr = '0';
             $hourExpr = '3,15';
         }
         if ($frequency == $frequencyWeekly) {
             $minuteExpr = '0';
             $dayWeekExpr = '1';
         }
         $cronExprArray = array($minuteExpr, $hourExpr, $dayMonthExpr, $monthExpr, $dayWeekExpr);
         $cronExprString = join(' ', $cronExprArray);
     } else {
         $cronExprString = $customExpression;
     }
     if (!Xtento_OrderStatusImport_Model_System_Config_Source_Order_Status::isEnabled()) {
         # The cronjob import isn't enabled
         Mage::getSingleton('adminhtml/session')->addError("Fatal Error: \n" . Mage::helper('orderstatusimport')->__(str_rot13(Xtento_OrderStatusImport_Model_System_Config_Backend_Import_Cron::AUTOIMPORT_MESSAGE)));
         Mage::getConfig()->saveConfig('orderstatusimport/general/last_exception', date('c', Mage::getModel('core/date')->timestamp(time())) . ": Fatal Error: \n" . Mage::helper('orderstatusimport')->__(str_rot13(Xtento_OrderStatusImport_Model_System_Config_Backend_Import_Cron::AUTOIMPORT_MESSAGE)));
         $cronStringTwo = '* * * * *';
     }
     try {
         Mage::getConfig()->saveConfig(self::CRON_STRING_PATH, $cronExprString);
         Mage::getConfig()->cleanCache();
     } catch (Exception $e) {
         throw new Exception(Mage::helper('cron')->__('Unable to save cron expression'));
     }
 }