/**
 * Handle the processing and feedback of the admin tools page.
 *
 * @since BuddyPress (2.0.0)
 */
function bp_admin_repair_handler()
{
    if (!bp_is_post_request()) {
        return;
    }
    if (empty($_POST['bp-tools-submit'])) {
        return;
    }
    check_admin_referer('bp-do-counts');
    // Stores messages
    $messages = array();
    wp_cache_flush();
    foreach ((array) bp_admin_repair_list() as $item) {
        if (isset($item[2]) && isset($_POST[$item[0]]) && 1 === absint($_POST[$item[0]]) && is_callable($item[2])) {
            $messages[] = call_user_func($item[2]);
        }
    }
    if (count($messages)) {
        foreach ($messages as $message) {
            bp_admin_tools_feedback($message[1]);
        }
    }
}
/**
 * Handle the processing and feedback of the admin tools page.
 *
 * @since 2.0.0
 */
function bp_admin_repair_handler()
{
    if (!bp_is_post_request() || empty($_POST['bp-tools-submit'])) {
        return;
    }
    check_admin_referer('bp-do-counts');
    // Bail if user cannot moderate.
    $capability = bp_core_do_network_admin() ? 'manage_network_options' : 'manage_options';
    if (!bp_current_user_can($capability)) {
        return;
    }
    wp_cache_flush();
    $messages = array();
    foreach ((array) bp_admin_repair_list() as $item) {
        if (isset($item[2]) && isset($_POST[$item[0]]) && 1 === absint($_POST[$item[0]]) && is_callable($item[2])) {
            $messages[] = call_user_func($item[2]);
        }
    }
    if (count($messages)) {
        foreach ($messages as $message) {
            bp_admin_tools_feedback($message[1]);
        }
    }
}