function wp_cache_check_mobile($cache_key)
{
    global $wp_cache_mobile_enabled, $wp_cache_mobile_browsers, $wp_cache_mobile_prefixes;
    if (!isset($wp_cache_mobile_enabled) || false == $wp_cache_mobile_enabled) {
        return $cache_key;
    }
    if (isset($GLOBALS['wp_super_cache_debug']) && $GLOBALS['wp_super_cache_debug']) {
        wp_cache_debug("wp_cache_check_mobile: {$cache_key}");
    }
    // allow plugins to short circuit mobile check. Cookie, extra UA checks?
    switch (do_cacheaction('wp_cache_check_mobile', $cache_key)) {
        case "normal":
            if (isset($GLOBALS['wp_super_cache_debug']) && $GLOBALS['wp_super_cache_debug']) {
                wp_cache_debug("wp_cache_check_mobile: desktop user agent detected by wp_cache_check_mobile action");
            }
            return $cache_key;
            break;
        case "mobile":
            if (isset($GLOBALS['wp_super_cache_debug']) && $GLOBALS['wp_super_cache_debug']) {
                wp_cache_debug("wp_cache_check_mobile: mobile user agent detected by wp_cache_check_mobile action");
            }
            return $cache_key . "-mobile";
            break;
    }
    if (!isset($_SERVER["HTTP_USER_AGENT"])) {
        return $cache_key;
    }
    if (do_cacheaction('disable_mobile_check', false)) {
        if (isset($GLOBALS['wp_super_cache_debug']) && $GLOBALS['wp_super_cache_debug']) {
            wp_cache_debug("wp_cache_check_mobile: disable_mobile_check disabled mobile check");
        }
        return $cache_key;
    }
    $browsers = explode(',', $wp_cache_mobile_browsers);
    $user_agent = strtolower($_SERVER['HTTP_USER_AGENT']);
    foreach ($browsers as $browser) {
        if (strstr($user_agent, trim(strtolower($browser)))) {
            if (isset($GLOBALS['wp_super_cache_debug']) && $GLOBALS['wp_super_cache_debug']) {
                wp_cache_debug("mobile browser detected: " . $_SERVER["HTTP_USER_AGENT"], 5);
            }
            return $cache_key . '-' . wp_cache_mobile_group($user_agent);
        }
    }
    if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) {
        return $cache_key . '-' . $_SERVER['HTTP_X_WAP_PROFILE'];
    }
    if (isset($_SERVER['HTTP_PROFILE'])) {
        return $cache_key . '-' . $_SERVER['HTTP_PROFILE'];
    }
    if (isset($wp_cache_mobile_prefixes)) {
        $browsers = explode(',', $wp_cache_mobile_prefixes);
        foreach ($browsers as $browser_prefix) {
            if (substr($user_agent, 0, 4) == $browser_prefix) {
                if (isset($GLOBALS['wp_super_cache_debug']) && $GLOBALS['wp_super_cache_debug']) {
                    wp_cache_debug("mobile browser (prefix) detected: " . $_SERVER["HTTP_USER_AGENT"], 5);
                }
                return $cache_key . '-' . $browser_prefix;
            }
        }
    }
    $accept = isset($_SERVER['HTTP_ACCEPT']) ? strtolower($_SERVER['HTTP_ACCEPT']) : '';
    if (strpos($accept, 'wap') !== false) {
        return $cache_key . '-' . 'wap';
    }
    if (isset($_SERVER['ALL_HTTP']) && strpos(strtolower($_SERVER['ALL_HTTP']), 'operamini') !== false) {
        return $cache_key . '-' . 'operamini';
    }
    return $cache_key;
}
function wp_cache_check_mobile($cache_key)
{
    global $wp_cache_mobile_enabled, $wp_cache_mobile_browsers, $wp_cache_mobile_prefixes;
    if (!isset($wp_cache_mobile_enabled) || false == $wp_cache_mobile_enabled) {
        return $cache_key;
    }
    if (!isset($_SERVER["HTTP_USER_AGENT"])) {
        return $cache_key;
    }
    $browsers = explode(',', $wp_cache_mobile_browsers);
    $user_agent = strtolower($_SERVER['HTTP_USER_AGENT']);
    foreach ($browsers as $browser) {
        if (strstr($user_agent, trim(strtolower($browser)))) {
            if (isset($GLOBALS['wp_super_cache_debug']) && $GLOBALS['wp_super_cache_debug']) {
                wp_cache_debug("mobile browser detected: " . $_SERVER["HTTP_USER_AGENT"], 5);
            }
            return $cache_key . '-' . wp_cache_mobile_group($user_agent);
        }
    }
    if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) {
        return $cache_key . '-' . $_SERVER['HTTP_X_WAP_PROFILE'];
    }
    if (isset($_SERVER['HTTP_PROFILE'])) {
        return $cache_key . '-' . $_SERVER['HTTP_PROFILE'];
    }
    if (isset($wp_cache_mobile_prefixes)) {
        $browsers = explode(',', $wp_cache_mobile_prefixes);
        foreach ($browsers as $browser_prefix) {
            if (substr($user_agent, 0, 4) == $browser_prefix) {
                if (isset($GLOBALS['wp_super_cache_debug']) && $GLOBALS['wp_super_cache_debug']) {
                    wp_cache_debug("mobile browser (prefix) detected: " . $_SERVER["HTTP_USER_AGENT"], 5);
                }
                return $cache_key . '-' . $browser_prefix;
            }
        }
    }
    $accept = strtolower($_SERVER['HTTP_ACCEPT']);
    if (strpos($accept, 'wap') !== false) {
        return $cache_key . '-' . 'wap';
    }
    if (isset($_SERVER['ALL_HTTP']) && strpos(strtolower($_SERVER['ALL_HTTP']), 'operamini') !== false) {
        return $cache_key . '-' . 'operamini';
    }
    return $cache_key;
}