Jetpack::submit_security_report PHP Method

submit_security_report() public static method

Allows plugins to submit security reports.
public static submit_security_report ( string $type = '', string $plugin_file = '', array $args = [] )
$type string Report type (login_form, backup, file_scanning, spam)
$plugin_file string Plugin __FILE__, so that we can pull plugin data
$args array See definitions above
    public static function submit_security_report($type = '', $plugin_file = '', $args = array())
    {
        _deprecated_function(__FUNCTION__, 'jetpack-4.2', null);
    }

Usage Example

Example #1
0
function backupbuddy_jetpack_security_report()
{
    $maxTimeWithoutBackupBeforeWarn = 60 * 60 * 24 * 32;
    // After this amount of time (default 32 days) we will warn the user that they have not completed a backup in too long.
    // Default arguments.
    $args = array('status' => 'ok', 'message' => '');
    // Determine last completed backup.
    $lastRun = pb_backupbuddy::$options['last_backup_finish'];
    if (0 === $lastRun) {
        // never made a backup.
        $args['status'] = 'warning';
        $args['message'] = __('You have not completed your first BackupBuddy backup.', 'it-l10n-backupbuddy');
    } else {
        // have made a backup.
        $args['last'] = $lastRun;
        // If the last backup was too long ago then change status to warning. Only calculate a backup was ever made.
        if (time() - $lastRun > $maxTimeWithoutBackupBeforeWarn) {
            $args['status'] = 'warning';
            $args['message'] .= ' ' . __('It has been over a month since your last BackupBuddy backup completed.', 'it-l10n-backupbuddy');
        }
    }
    // Determine next run.
    $nextRun = 0;
    foreach (pb_backupbuddy::$options['schedules'] as $schedule_id => $schedule) {
        // Find soonest schedule to run next.
        $thisRun = wp_next_scheduled('backupbuddy_cron', array('run_scheduled_backup', array((int) $schedule_id)));
        if (false !== $thisRun) {
            if (0 === $nextRun || $thisRun < $nextRun) {
                // Set next run if $thisRun is going to run sooner than schedule in $nextRun.
                $nextRun = $thisRun;
            }
        }
    }
    if (0 === $nextRun) {
        $args['status'] = 'warning';
        $args['message'] .= ' ' . __('You do not currently have any backup schedules in BackupBuddy.', 'it-l10n-backupbuddy');
    } else {
        $args['next'] = $nextRun;
    }
    // Cleanup.
    $args['message'] = trim($args['message']);
    if ('' == $args['message']) {
        unset($args['message']);
    }
    // Call security report.
    Jetpack::submit_security_report('backup', dirname(__FILE__) . '/backupbuddy.php', $args);
}
Jetpack