function InitCron() { global $cronTab, $maxJobs; @ignore_user_abort(false); $save_mode = @ini_get('safe_mode'); if (!$save_mode) { @set_time_limit(60); } $jobs = parseCronFile($cronTab); $jobsRun = 0; for ($i = 0; $i < count($jobs); $i++) { if ($maxJobs == 0 || $jobsRun < $maxJobs) { if (runJob($jobs[$i])) { $jobsRun++; } } } }
break; } if (!$bRes) { break; } } return $bRes; } function runJob($aJob) { if (!empty($aJob['file']) && !empty($aJob['class']) && file_exists(BX_DIRECTORY_PATH_ROOT . $aJob['file'])) { if (!class_exists($aJob['class'])) { require_once BX_DIRECTORY_PATH_ROOT . $aJob['file']; } $oHandler = new $aJob['class'](); $oHandler->processing(); } else { if (!empty($aJob['eval'])) { require_once BX_DIRECTORY_PATH_CLASSES . 'BxDolService.php'; eval($aJob['eval']); } } } $oDb = new BxDolDb(); $aJobs = $oDb->fromCache('sys_cron_jobs', 'getAll', 'SELECT * FROM `sys_cron_jobs`'); $aDate = getdate(time()); foreach ($aJobs as $aRow) { if (checkCronJob($aRow['time'], $aDate)) { runJob($aRow); } }
function footer() { global $db, $db_obstart, $db_footertime, $db_htmifopen, $P_S_T, $mtablewidth, $db_ceoconnect, $wind_version, $imgpath, $stylepath, $footer_ad, $db_union, $timestamp, $db_icp, $db_icpurl, $db_advertdb, $groupid, $SCR, $db_ystats_ifopen, $db_ystats_unit_id, $db_ystats_style, $db_redundancy, $pwServer, $db_ifcredit, $credit_pop, $db_foot, $db_mode, $db_modes, $shortcutforum, $_G, $winddb, $db_toolbar, $winduid, $db_menuinit, $db_appifopen, $db_job_ispop, $db_job_isopen, $db_siteappkey; defined('AJAX') && ajax_footer(); Update_ol(); $wind_spend = ''; $ft_gzip = ($db_obstart ? 'Gzip enabled' : 'Gzip disabled') . $db_union[3]; if ($db_footertime == 1) { $t_array = explode(' ', microtime()); $totaltime = number_format($t_array[0] + $t_array[1] - $P_S_T, 6); $qn = $db ? $db->query_num : 0; $wind_spend = "Total {$totaltime}(s) query {$qn},"; } $ft_time = get_date($timestamp, 'm-d H:i'); $db_icp && ($db_icp = "<a href=\"http://www.miibeian.gov.cn\" target=\"_blank\">{$db_icp}</a>"); if ($db_toolbar) { if ($_COOKIE['toolbarhide']) { $toolbarstyle = 'style="display:none"'; $openbarstyle = ''; $closebarstyle = 'style="display:none"'; } else { $toolbarstyle = ''; $openbarstyle = 'style="display:none"'; $closebarstyle = ''; if ($db_appifopen) { $appshortcut = trim($winddb['appshortcut'], ','); if (!empty($appshortcut) && $db_siteappkey) { $appclient = L::loadClass('appclient'); $bottom_appshortcut = $appclient->userApplist($winduid, $appshortcut, 1); } } } } $db_menuinit = trim($db_menuinit, ','); runJob(); require PrintEot('footer'); if ($db_advertdb['Site.PopupNotice'] || $db_advertdb['Site.FloatLeft'] || $db_advertdb['Site.FloatRight'] || $db_advertdb['Site.FloatRand']) { require PrintEot('advert'); } $output = ob_get_contents(); if ($db_htmifopen) { $output = preg_replace("/\\<a(\\s*[^\\>]+\\s*)href\\=([\"|\\']?)((index|cate|thread|read|faq|rss)\\.php\\?[^\"\\'>\\s]+\\s?)[\"|\\']?/ies", "Htm_cv('\\3','<a\\1href=\"')", $output); } if ($db_redundancy && $SCR != 'post') { /* $output = str_replace( array("\r","\n\n","\n\t","\n ",">\n","\n<","}\n","{\n",";\n","/\n","\t ",">\t","\t<","}\t","{\t",";\t","/\t",' ','<!--<!---->','<!---->'), array('',"\n",' ',' ','>','<','}','{',';','/',' ','>','<','}','{',';','/',' ','',''), $output ); */ $output = str_replace(array("\r", '<!---->-->', '<!--<!---->', "<!---->\n", '<!---->', '<!-- -->', "<!--\n-->", "\t\t", ' ', "\n\t", "\n\n"), array('', '', '', '', '', '', '', "\n", "\n"), $output); } else { $output = str_replace(array('<!---->-->', '<!--<!---->', "<!---->\r\n", '<!---->', '<!-- -->', "\t\t\t"), '', $output); } if ($SCR != 'post') { $ceversion = defined('CE') ? 1 : 0; $output .= "<script language=\"JavaScript\" src=\"http://init.phpwind.net/init.php?sitehash={$GLOBALS[db_sitehash]}&v={$wind_version}&c={$ceversion}\"></script>"; } if ($groupid == 'guest' && !defined('MSG') && GetGcache()) { require_once R_P . 'require/guestfunc.php'; creatguestcache($output); } updateCacheData(); echo ObContents($output); unset($output); N_flush(); exit; }
function InitCron() { global $cronTab, $maxJobs; @ignore_user_abort(FALSE); @set_time_limit(60); $jobs = parseCronFile($cronTab); $jobsRun = 0; for ($i = 0; $i < count($jobs); $i++) { if ($maxJobs == 0 || $jobsRun < $maxJobs) { if (runJob($jobs[$i])) { $jobsRun++; } } } }
load('cron'); if (isset($_POST['job_type'])) { $jobType = $_POST['job_type']; } elseif (isset($argv[1]) && substr($argv[1], 0, 8) == 'job_type') { $jobType = substr($argv[1], 9); } else { logError(__FILE__ . ' [' . __LINE__ . '] - No job type given.'); die('No job type given'); } // Stop, if we are currently running a job if (runningJob() or defined('RUNNING_JOB')) { logError(__FILE__ . ' [' . __LINE__ . '] - Cron Job already running.'); die('Cron Job already running'); } define('RUNNING_JOB', true); runJob(); switch ($jobType) { case 'awards': runAwardsJob(); break; case 'familynews': runFamilyNewsJob(); break; case 'youtube': runYouTubeJob(); break; case 'instagram': runInstagramJob(); break; default: logError(__FILE__ . ' [' . __LINE__ . '] - Invalid job type given [' . $jobType . '].');
/** * 输出页脚,并处理输出缓存中的内容 */ function footer() { global $db, $db_obstart, $db_footertime, $P_S_T, $mtablewidth, $db_ceoconnect, $wind_version, $imgpath, $stylepath, $footer_ad, $db_union, $timestamp, $db_icp, $db_icpurl, $db_advertdb, $groupid, $db_ystats_ifopen, $db_ystats_unit_id, $db_ystats_style, $pwServer, $db_ifcredit, $credit_pop, $db_foot, $db_mode, $db_modes, $shortcutforum, $_G, $winddb, $db_toolbar, $winduid, $db_menuinit, $db_appifopen, $db_job_ispop, $db_job_isopen, $db_siteappkey, $_Navbar, $db_statscode; defined('AJAX') && ajax_footer(); $wind_spend = ''; //$db_statscode = html_entity_decode($db_statscode); $ft_gzip = ($db_obstart ? 'Gzip enabled' : 'Gzip disabled') . $db_union[3]; if ($db_footertime == 1) { $totaltime = number_format(pwMicrotime() - $P_S_T, 6); $qn = $db ? $db->query_num : 0; $wind_spend = "Total {$totaltime}(s) query {$qn},"; //*Dev Code Start*// if ($GLOBALS['db_debug']) { include_once R_P . 'lang_change.php'; $wind_spend .= "SQLtime:" . number_format($db->totaltime, 6); $wind_spend .= !function_exists('memory_get_usage') ? '' : ',Memory Usage:' . round(memory_get_usage() / 1024 / 1024, 4) . 'MB,'; $_GET['debug'] && pwCache::writeover(D_P . "data/wind_spend.txt", SCR . ":\t" . $wind_spend . "\r\n", 'ab'); $masterDb = $db->getMastdb(); if ($masterDb->arr_query) { writeover(D_P . "data/sqllist.txt", $masterDb->arr_query, 'wb'); } } //*Dev Code End*// } $ft_time = get_date($timestamp, 'm-d H:i'); $db_icp && ($db_icp = "<a href=\"http://www.miibeian.gov.cn\" target=\"_blank\">{$db_icp}</a>"); if ($db_toolbar) { if ($_COOKIE['toolbarhide']) { $toolbarstyle = 'style="display:none"'; $openbarstyle = ''; $closebarstyle = 'style="display:none"'; } else { $toolbarstyle = ''; $openbarstyle = 'style="display:none"'; $closebarstyle = ''; if ($db_appifopen) { $appshortcut = trim($winddb['appshortcut'], ','); if (!empty($appshortcut) && $db_siteappkey) { $appshortcut = explode(',', $appshortcut); $bottom_appshortcut = array(); $appclient = L::loadClass('appclient'); $bottom_appshortcut = $appclient->userApplist($winduid, $appshortcut, 1); } } } } $db_menuinit = trim($db_menuinit, ','); runJob(); require PrintEot('footer'); if ($db_advertdb['Site.PopupNotice'] || $db_advertdb['Site.FloatLeft'] || $db_advertdb['Site.FloatRight'] || $db_advertdb['Site.FloatRand']) { require PrintEot('advert'); } pwOutPut(); }