diff options
Diffstat (limited to 'apis/cron.inc.php')
-rw-r--r-- | apis/cron.inc.php | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/apis/cron.inc.php b/apis/cron.inc.php new file mode 100644 index 00000000..2d0fc66c --- /dev/null +++ b/apis/cron.inc.php @@ -0,0 +1,28 @@ +<?php + +/* + * cronjob callback. This script does periodic checks, logging, + * housekeeping etc. Should be called every 5 mins by cron. + * Make a crontab entry that runs this as the same user the + * www-php is normally run as, eg. */ +// */5 * * * * www-data php /path/to/api.php cron + +if (!isLocalExecution()) + exit(0); + +switch (mt_rand(1, 10)) { +case 1: + Database::exec("DELETE FROM clientlog WHERE (UNIX_TIMESTAMP() - dateline) > 86400 * 90"); + break; +case 2: + Database::exec("DELETE FROM eventlog WHERE (UNIX_TIMESTAMP() - dateline) > 86400 * 90"); + break; +case 3: + Database::exec("DELETE FROM property WHERE dateline <> 0 AND dateline < UNIX_TIMESTAMP()"); + break; +case 4: + Database::exec("DELETE FROM callback WHERE (UNIX_TIMESTAMP() - dateline) > 86400"); + break; +} + +Trigger::checkCallbacks(); |