HEX
Server: Apache
System: Linux jomarlogistica 6.14.0-29-generic #29~24.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Aug 14 16:52:50 UTC 2 x86_64
User: jomarlogistica.com.br (1021295)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/vhosts/jomarlogistica.com.br/httpdocs/wp-content/plugins/newsletter/includes/cron.php
<?php
/**
 * Set up and log the cron system. To be loaded at the plugin start.
 */
defined('ABSPATH') || exit;

// Can be redefined in wp-config.php (not recommended)
if (!defined('NEWSLETTER_CRON_INTERVAL')) {
    define('NEWSLETTER_CRON_INTERVAL', 300);
}

// Logging of the cron calls to debug the so many situations where the cron is not triggered at all (grrr...).
if (defined('DOING_CRON') && DOING_CRON) {
    $calls = get_option('newsletter_diagnostic_cron_calls', []);
    // Protection against scrambled options or bad written database caching plugin (yes, it happened, grrr...).
    if (!is_array($calls)) {
        $calls = [];
    }
    $calls[] = time();
    // TODO: create a constant for samples limit
    if (count($calls) > 100) {
        // TODO: optimize using array_slice() and call every ten records
        array_shift($calls);
    }
    update_option('newsletter_diagnostic_cron_calls', $calls, false);
}

// As soon as possible but with low priority so it is ecxecutes as last filter to avoid bad witten
// filters which remove other's schedules (yes, it happened, grrr...).
add_filter('cron_schedules', function ($schedules) {
    $schedules['newsletter'] = [
        'interval' => NEWSLETTER_CRON_INTERVAL,
        'display' => 'Every ' . NEWSLETTER_CRON_INTERVAL . ' seconds'
    ];
    return $schedules;
}, 1000);