* @copyright 2013 Free Software Foundation, Inc. * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://gnu.io/social/ */ if (!defined('GNUSOCIAL')) { exit(1); } class CronishPlugin extends Plugin { const PLUGIN_VERSION = '2.0.0'; public function onCronMinutely() { common_debug('CRON: Running near-minutely cron job!'); } public function onCronHourly() { common_debug('CRON: Running near-hourly cron job!'); } public function onCronDaily() { common_debug('CRON: Running near-daily cron job!'); } public function onCronWeekly() { common_debug('CRON: Running near-weekly cron job!'); } /** * When the page has finished rendering, let's do some cron jobs * if we have the time. */ public function onEndActionExecute(Action $action) { $cron = new Cronish(); $cron->callTimedEvents(); return true; } public function onPluginVersion(array &$versions): bool { $versions[] = array('name' => 'Cronish', 'version' => self::PLUGIN_VERSION, 'author' => 'Mikael Nordfeldth', 'homepage' => GNUSOCIAL_ENGINE_URL, 'description' => // TRANS: Plugin description. _m('Cronish plugin that executes events on a near-minutely/hour/day/week basis.')); return true; } }