aboutsummaryrefslogtreecommitdiff
path: root/engine/handlers/cron_handler.php
blob: 939beeaf4817131dba7c4df8e991c458b9300788 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
/**
 * Cron handlers
 *
 * This file dispatches cron actions.  It is called via a URL rewrite in .htaccess
 * from http://site/p/.  Anything after 'action/' is considered the action
 * and will be passed to {@link action()}.
 *
 * @package Elgg.Core
 * @subpackage Actions
 * @link http://docs.elgg.org/Tutorials/Actions
 *
 * @todo
 */

require_once("../start.php");
global $CONFIG;

$period = get_input('period');
if (!$period) {
	throw new CronException(elgg_echo('CronException:unknownperiod', array($period)));
}

// Get a list of parameters
$params = array();
$params['time'] = time();

foreach ($CONFIG->input as $k => $v) {
	$params[$k] = $v;
}

// Data to return to
$std_out = "";
$old_stdout = "";
ob_start();

$old_stdout = trigger_plugin_hook('cron', $period, $params, $old_stdout);
$std_out = ob_get_clean();

// Return event
echo $std_out . $old_stdout;