diff --git a/include/cronhooks.php b/include/cronhooks.php new file mode 100644 index 0000000000..a4eb5fbb3e --- /dev/null +++ b/include/cronhooks.php @@ -0,0 +1,41 @@ +require_once("boot.php"); + + +function cronhooks_run($argv, $argc){ + global $a, $db; + + if(is_null($a)) { + $a = new App; + } + + if(is_null($db)) { + @include(".htconfig.php"); + require_once("dba.php"); + $db = new dba($db_host, $db_user, $db_pass, $db_data); + unset($db_host, $db_user, $db_pass, $db_data); + }; + + require_once('include/session.php'); + require_once('include/datetime.php'); + + load_config('config'); + load_config('system'); + + $a->set_baseurl(get_config('system','url')); + + load_hooks(); + + logger('cronhooks: start'); + + + $d = datetime_convert(); + + call_hooks('cron', $d); + + return; +} + +if (array_search(__file__,get_included_files())===0){ + cronhooks_run($argv,$argc); + killme(); +} diff --git a/include/poller.php b/include/poller.php index 86bb8ad55b..651736a99a 100644 --- a/include/poller.php +++ b/include/poller.php @@ -80,8 +80,7 @@ function poller_run($argv, $argc){ $d = datetime_convert(); if(! $restart) - call_hooks('cron', $d); - + proc_run('php','include/cronhooks.php'); $contacts = q("SELECT `id` FROM `contact` WHERE ( `rel` = %d OR `rel` = %d ) AND `poll` != '' @@ -101,7 +100,7 @@ function poller_run($argv, $argc){ intval($c['id']) ); - if(! count($res)) + if((! $res) || (! count($res))) continue; foreach($res as $contact) {