Mage_Adminhtml_Model_System_Config_Backend_Log_Cron Class Reference

Inheritance diagram for Mage_Adminhtml_Model_System_Config_Backend_Log_Cron:

Mage_Core_Model_Config_Data Mage_Core_Model_Abstract Varien_Object

List of all members.

Public Attributes

const CRON_STRING_PATH = 'crontab/jobs/log_clean/schedule/cron_expr'
const CRON_MODEL_PATH = 'crontab/jobs/log_clean/run/model'

Protected Member Functions

 _afterSave ()


Detailed Description

Definition at line 35 of file Cron.php.


Member Function Documentation

_afterSave (  )  [protected]

Cron settings after save

Returns:
Mage_Adminhtml_Model_System_Config_Backend_Log_Cron

Reimplemented from Mage_Core_Model_Abstract.

Definition at line 45 of file Cron.php.

00046     {
00047         $enabled    = $this->getData('groups/log/fields/enabled/value');
00048         $time       = $this->getData('groups/log/fields/time/value');
00049         $frequncy   = $this->getData('groups/log/fields/frequency/value');
00050         $errorEmail = $this->getData('groups/log/fields/error_email/value');
00051 
00052         $frequencyDaily     = Mage_Adminhtml_Model_System_Config_Source_Cron_Frequency::CRON_DAILY;
00053         $frequencyWeekly    = Mage_Adminhtml_Model_System_Config_Source_Cron_Frequency::CRON_WEEKLY;
00054         $frequencyMonthly   = Mage_Adminhtml_Model_System_Config_Source_Cron_Frequency::CRON_MONTHLY;
00055 
00056         if ($enabled) {
00057             $cronDayOfWeek = date('N');
00058             $cronExprArray = array(
00059                 intval($time[1]),                                   # Minute
00060                 intval($time[0]),                                   # Hour
00061                 ($frequncy == $frequencyMonthly) ? '1' : '*',       # Day of the Month
00062                 '*',                                                # Month of the Year
00063                 ($frequncy == $frequencyWeekly) ? '1' : '*',        # Day of the Week
00064             );
00065             $cronExprString = join(' ', $cronExprArray);
00066         }
00067         else {
00068             $cronExprString = '';
00069         }
00070 
00071         try {
00072             Mage::getModel('core/config_data')
00073                 ->load(self::CRON_STRING_PATH, 'path')
00074                 ->setValue($cronExprString)
00075                 ->setPath(self::CRON_STRING_PATH)
00076                 ->save();
00077 
00078             Mage::getModel('core/config_data')
00079                 ->load(self::CRON_MODEL_PATH, 'path')
00080                 ->setValue((string) Mage::getConfig()->getNode(self::CRON_MODEL_PATH))
00081                 ->setPath(self::CRON_MODEL_PATH)
00082                 ->save();
00083         }
00084         catch (Exception $e) {
00085             Mage::throwException(Mage::helper('adminhtml')->__('Unable to save Cron expression'));
00086         }
00087     }


Member Data Documentation

const CRON_MODEL_PATH = 'crontab/jobs/log_clean/run/model'

Definition at line 38 of file Cron.php.

const CRON_STRING_PATH = 'crontab/jobs/log_clean/schedule/cron_expr'

Definition at line 37 of file Cron.php.


The documentation for this class was generated from the following file:

Generated on Sat Jul 4 17:23:13 2009 for Magento by  doxygen 1.5.8