Public Attributes | |
const | CRON_STRING_PATH = 'crontab/jobs/catalog_product_alert/schedule/cron_expr' |
const | CRON_MODEL_PATH = 'crontab/jobs/catalog_product_alert/run/model' |
Protected Member Functions | |
_afterSave () |
Definition at line 35 of file Cron.php.
_afterSave | ( | ) | [protected] |
Processing object after save data
Reimplemented from Mage_Core_Model_Abstract.
Definition at line 40 of file Cron.php.
00041 { 00042 $priceEnable = $this->getData('groups/productalert/fields/allow_price/value'); 00043 $stockEnable = $this->getData('groups/productalert/fields/allow_stock/value'); 00044 00045 $enabled = $priceEnable || $stockEnable; 00046 $frequncy = $this->getData('groups/productalert_cron/fields/frequency/value'); 00047 $time = $this->getData('groups/productalert_cron/fields/time/value'); 00048 00049 $errorEmail = $this->getData('groups/productalert_cron/fields/error_email/value'); 00050 00051 $frequencyDaily = Mage_Adminhtml_Model_System_Config_Source_Cron_Frequency::CRON_DAILY; 00052 $frequencyWeekly = Mage_Adminhtml_Model_System_Config_Source_Cron_Frequency::CRON_WEEKLY; 00053 $frequencyMonthly = Mage_Adminhtml_Model_System_Config_Source_Cron_Frequency::CRON_MONTHLY; 00054 $cronDayOfWeek = date('N'); 00055 00056 $cronExprArray = array( 00057 intval($time[1]), # Minute 00058 intval($time[0]), # Hour 00059 ($frequncy == $frequencyMonthly) ? '1' : '*', # Day of the Month 00060 '*', # Month of the Year 00061 ($frequncy == $frequencyWeekly) ? '1' : '*', # Day of the Week 00062 ); 00063 00064 $cronExprString = join(' ', $cronExprArray); 00065 00066 try { 00067 Mage::getModel('core/config_data') 00068 ->load(self::CRON_STRING_PATH, 'path') 00069 ->setValue($cronExprString) 00070 ->setPath(self::CRON_STRING_PATH) 00071 ->save(); 00072 Mage::getModel('core/config_data') 00073 ->load(self::CRON_MODEL_PATH, 'path') 00074 ->setValue((string) Mage::getConfig()->getNode(self::CRON_MODEL_PATH)) 00075 ->setPath(self::CRON_MODEL_PATH) 00076 ->save(); 00077 } catch (Exception $e) { 00078 throw new Exception(Mage::helper('cron')->__('Unable to save Cron expression')); 00079 } 00080 }
const CRON_MODEL_PATH = 'crontab/jobs/catalog_product_alert/run/model' |
const CRON_STRING_PATH = 'crontab/jobs/catalog_product_alert/schedule/cron_expr' |