Example #1
0
// Get the cronjob
if (is_null($cronjob)) {
    $cronjobs = Lightwork::Cronjobs();
    // Get all cronjobs
    if (count($cronjobs) > 0) {
        Database::StartTransaction();
        // Start a new transaction to prevent query spam
        foreach ($cronjobs as $cronjob) {
            if (is_file(CRONJOB_DIR . $cronjob['path'] . '.php')) {
                execute($cronjob);
            } else {
                Lightwork::Log('Cronjob missing: ' . $cronjob['name']);
            }
            // ...if they exist.
        }
        Database::Commit();
        // Commit all the query timestamp updates
        Lightwork::Done(0, 'CRONJOBS_DONE');
        // We are done here, output proper exit code
    } else {
        Lightwork::Done(0, 'CRONJOBS_IDLE');
    }
    // No cronjobs were executed - we are idling
} else {
    if (isset($cronjob['status']) && isset($cronjob['message'])) {
        Lightwork::Done($cronjob['status'], $cronjob['message']);
    } else {
        if (is_file(CRONJOB_DIR . $cronjob['path'] . '.php')) {
            execute($cronjob);
            // Cronjob exists and we can execute it
            Lightwork::Done(0, 'CRONJOB_DONE');