function mailchimpSF_authorize()
{
    $api = mailchimpSF_get_api(true);
    $proxy = apply_filters('mailchimp_authorize_url', $api->getApiUrl('authorize'));
    if (strpos($proxy, 'socialize-this') !== false) {
        $salt = mailchimpSF_auth_nonce_salt();
        $id = wp_create_nonce(mailchimpSF_auth_nonce_key($salt));
        $url = home_url('index.php');
        $args = array('mcsf_action' => 'authorized', 'salt' => $salt, 'user_id' => get_current_user_id());
        $proxy = add_query_arg(array('id' => $id, 'response_url' => urlencode(add_query_arg($args, $url))), $proxy);
        $proxy = apply_filters('mailchimp_proxy_url', $proxy);
    }
    wp_redirect($proxy);
    exit;
}
function mailchimpSF_auth_nonce_key($salt = null)
{
    if (is_null($salt)) {
        $salt = mailchimpSF_auth_nonce_salt();
    }
    return 'social_authentication' . md5(AUTH_KEY . $salt);
}