do_items( );
}
function save_results() {
set_transient( 'health-check-results', $GLOBALS['_HealthCheck_Instance']->test_results, 60 );
}
function load_results() {
$GLOBALS['_HealthCheck_Instance']->test_results = get_transient( 'health-check-results', $GLOBALS['_HealthCheck_Instance']->test_results, 60 );
}
function output_test_stats() {
$passed = empty( $GLOBALS['_HealthCheck_Instance']->test_results[HEALTH_CHECK_OK] ) ? 0 : count( $GLOBALS['_HealthCheck_Instance']->test_results[HEALTH_CHECK_OK] );
$errors = empty( $GLOBALS['_HealthCheck_Instance']->test_results[HEALTH_CHECK_ERROR] ) ? 0 : count( $GLOBALS['_HealthCheck_Instance']->test_results[HEALTH_CHECK_ERROR] );
$recommendations = empty( $GLOBALS['_HealthCheck_Instance']->test_results[HEALTH_CHECK_RECOMMENDATION] ) ? 0 : count( $GLOBALS['_HealthCheck_Instance']->test_results[HEALTH_CHECK_RECOMMENDATION] );
$notices = empty( $GLOBALS['_HealthCheck_Instance']->test_results[HEALTH_CHECK_INFO] ) ? 0 : count( $GLOBALS['_HealthCheck_Instance']->test_results[HEALTH_CHECK_INFO] );
?>
tests_run, $GLOBALS['_HealthCheck_Tests']->assertions, $passed, $errors, $recommendations, $notices );?>
| Type |
Description |
test_results[HEALTH_CHECK_ERROR] as $res) {
echo wpautop(sprintf( __('| ERROR | %s |
'), $res->message));
}
}
if ($recommendations) {
foreach ($GLOBALS['_HealthCheck_Instance']->test_results[HEALTH_CHECK_RECOMMENDATION] as $res) {
echo wpautop(sprintf( __('| RECOMMENDATION | %s |
'), $res->message));
}
}
if ($notices) {
foreach ($GLOBALS['_HealthCheck_Instance']->test_results[HEALTH_CHECK_INFO] as $res) {
if ( !empty($res->message) )
echo wpautop(sprintf( __('| NOTICE | %s |
'), $res->message));
}
}
if ($passed) {
foreach ($GLOBALS['_HealthCheck_Instance']->test_results[HEALTH_CHECK_OK] as $res) {
if ( !empty($res->message) )
echo wpautop($res->message);
}
}
?>
| Type |
Description |
add( $classname, $classname, $deps );
$GLOBALS['_HealthCheck_Tests']->enqueue( $classname );
}
/**
* Load all the test classes we have.
*
* Each test class must also be registered by calling HealthCheck::register_test()
*
* @return none
*/
function load_tests() {
//Create the Test container
$GLOBALS['_HealthCheck_Tests'] = new HealthCheckTests();
$hc_tests_dir = plugin_dir_path(__FILE__) . 'hc-tests/';
//Uncomment for testing purposes only
//require_once($hc_tests_dir . 'dummy-test.php');
foreach ( array(
'php-configuration.php',
'mysql-configuration.php',
'server-configuration.php',
'wp-configuration.php',
) as $file ) {
require_once($hc_tests_dir . $file );
}
}
/**
* Load in our include files.
*
* @return none
*/
function load_includes() {
$hc_includes = plugin_dir_path(__FILE__) . 'hc-includes/';
require_once($hc_includes . 'class.health-check-test.php');
require_once($hc_includes . 'class.health-check-test-result.php');
require_once($hc_includes . 'versions.php');
require_once($hc_includes . 'class.health-check-tests.php');
}
/**
* Retrieves a value from an array by key without a notice
*/
function _fetch_array_key( $array, $key, $default = '' ) {
return isset( $array[$key] )? $array[$key] : $default;
}
/**
* Check to see if the supplied object is an instance of a class which extends HealthCheckTest
*
* @param object $object The objct to check
* @return bool True if it is, false if it isn't
*/
function _is_health_check_test( $object ) {
return is_subclass_of( $object, 'HealthCheckTest');
}
/**
* Verify the nonce in the url
*
* @param $action The nonce action to verify
* @return bool Whether or not it verified
*/
function _verify_nonce($action) {
$_wpnonce = isset($_REQUEST['_wpnonce']) ? $_REQUEST['_wpnonce'] : '';
return wp_verify_nonce($_wpnonce, $action);
}
/**
* die with OK on admin-post.php?action=health-check
*
* static method
*
* @return void
**/
function http_test() {
header('Content-Type: text/plain; charset=' . get_option('blog_charset'));
die('OK');
}
/**
* keep track of when the cron test was last run
*
* static method
*
* @return void
**/
function cron_test() {
set_transient('health_check_cron_check', time());
} # cron_test()
/**
* initialize cron checks
*
* static method
*
* @return void
**/
function init_cron_test() {
if ( !get_transient('health_check_activated') ) {
set_transient('health_check_activated', time());
delete_transient('health_check_cron_check');
wp_clear_scheduled_hook('health_check_cron_check');
wp_schedule_single_event(time() - 86400, 'health_check_cron_check');
} elseif ( !wp_next_scheduled('health_check_cron_check') ) {
wp_schedule_event(time(), 'twicedaily', 'health_check_cron_check');
}
add_action('health_check_cron_check', array('HealthCheck', 'cron_test'));
}
/**
* reset the cron checks, and setup an initial cron job
*
* static method
*
* @return void
**/
function activate() {
HealthCheck::init_cron_test();
}
/**
* reset the cron checks, and clean-up the cron job
*
* static method
*
* @return void
**/
function deactivate() {
delete_transient('health_check_cron_check_enabled');
delete_transient('health_check_activated');
delete_transient('health_check_cron_check');
wp_clear_scheduled_hook('health_check_cron_check');
}
}
/* Initialize ourselves */
add_action('plugins_loaded', array('HealthCheck','action_plugins_loaded'));
register_activation_hook(__FILE__, array('HealthCheck', 'activate'));
register_deactivation_hook(__FILE__, array('HealthCheck', 'deactivate'));
?>