コード例 #1
0
ファイル: job-scheduler.php プロジェクト: kisorbiswal/Creamy
if ($scheduleMinFreq <= CRM_JOB_SCHEDULING_DAILY) {
    $lastDailySchedule = $db->getSettingValueForKey(CRM_SETTING_JOB_LAST_DAY);
    $scheduleNow = false;
    if (empty($lastDailySchedule)) {
        $scheduleNow = true;
    } else {
        $timestamp = strtotime($lastDailySchedule);
        $nextPeriod = strtotime("+1 day", $timestamp);
        if (time() >= $nextPeriod) {
            $scheduleNow = true;
        }
    }
    // schedule now?
    if ($scheduleNow) {
        // save new scheduling date.
        $db->setSettingValueForKey(CRM_SETTING_JOB_LAST_DAY, date("Y-m-d H:i:s"));
        // schedule tasks
        scheduleJobsInDirectory(CRM_JOB_SCHEDULER_DAILY_DIR);
        // invoke the job scheduling in modules.
        $mh->scheduleJobsOnActiveModules(CRM_JOB_SCHEDULING_DAILY);
    }
}
// 1.c Weekly tasks
if ($scheduleMinFreq <= CRM_JOB_SCHEDULING_WEEKLY) {
    $lastWeeklySchedule = $db->getSettingValueForKey(CRM_SETTING_JOB_LAST_WEEK);
    $scheduleNow = false;
    if (empty($lastWeeklySchedule)) {
        $scheduleNow = true;
    } else {
        $timestamp = strtotime($lastWeeklySchedule);
        $nextPeriod = strtotime("+1 week", $timestamp);