Exemplo n.º 1
0
function wp_connect_tianya()
{
    if (!class_exists('tianyaOAuth')) {
        include dirname(__FILE__) . '/OAuth/tianya_OAuth.php';
    }
    $to = new tianyaOAuth(TIANYA_APP_KEY, TIANYA_APP_SECRET, $_GET['oauth_token'], $_SESSION['oauth_token_secret']);
    $tok = $to->getAccessToken($_REQUEST['oauth_verifier']);
    $to = new tianyaClient(TIANYA_APP_KEY, TIANYA_APP_SECRET, $tok['oauth_token'], $tok['oauth_token_secret']);
    $tianya = $to->get_user_info();
    if (!is_array($tianya) || $tianya['error_msg']) {
        return wp_noauth();
    }
    $tianya = $tianya['user'];
    $username = $tianya['user_id'];
    $email = $username . '@tianya.cn';
    $url = "http://my.tianya.cn/" . $username;
    $tid = "tytid";
    $uid = ifab(get_user_by_meta_value($tid, $username), email_exists($email));
    $userinfo = array($tid, $username, $tianya['user_name'], $username, $url, $username, $tok['oauth_token'], $tok['oauth_token_secret']);
    if ($uid) {
        wp_connect_login($userinfo, $email, $uid);
    } else {
        wp_connect_login($userinfo, $email);
    }
}
Exemplo n.º 2
0
if ($_GET['do'] == "profile") {
    if (is_user_logged_in()) {
        if ($_POST['add_qq'] || $_POST['add_sina'] || $_POST['add_renren'] || $_POST['add_shuoshuo'] || $_POST['add_sohu'] || $_POST['add_netease'] || $_POST['add_douban'] || $_POST['add_tianya'] || $_POST['add_kaixin'] || $_POST['add_twitter']) {
            wp_connect_header();
        } else {
            $user_id = get_current_user_id();
            wp_user_profile_update($user_id);
            header('Location:' . admin_url('profile.php'));
        }
    }
}
if ($_GET['do'] == "page") {
    $wptm_options = get_option('wptm_options');
    $wptm_advanced = get_option('wptm_advanced');
    $password = $_POST['password'];
    if (isset($_POST['message'])) {
        if ($wptm_options['page_password'] && $password == $wptm_options['page_password'] || is_user_logged_in() && function_exists('wp_connect_advanced') && $wptm_advanced['registered_users']) {
            wp_update_page();
        } else {
            echo 'pwderror';
        }
    }
}
if ($_GET['do'] == "login") {
    $user = wp_connect_get_cookie("wp_connect_cookie_user");
    if ($user) {
        $user[0][1] = ifuser($user[0][1]);
        wp_connect_login($user[0], $user[1], '', true);
        header('Location:' . $user[2]);
    }
}
Exemplo n.º 3
0
function connect_denglu()
{
    if ($_GET['dl_type'] == 'create') {
        // 对接open.denglu.cc
        if (current_user_can('manage_options')) {
            return open_denglu_cc($_GET['token'], $_GET['mediaUserID']);
        } else {
            return wp_die('对不起,您的用户权限不够,请用管理员帐号登录操作!');
        }
    } else {
        $redirect_to = isset($_GET['redirect_url']) ? $_GET['redirect_url'] : "";
        if (is_user_logged_in()) {
            // 同步绑定
            if (wp_connect_get_cookie("wp_connect_cookie_bind") == "sync") {
                $media = rtrim(substr($_GET['token'], 0, 2), '-');
                $name = array('3' => 'sina', '4' => 'qq', '5' => 'sohu', '6' => 'netease', '7' => 'renren', '17' => 'tianya');
                if ($name[$media]) {
                    $tok = 'wptm_' . $name[$media];
                    if ($redirect_to == admin_url('options-general.php?page=wp-connect')) {
                        update_option($tok, array('mediaUserID' => $_GET['mediaUserID']));
                    } else {
                        if ($redirect_to == admin_url('profile.php')) {
                            $wpuid = get_current_user_id();
                        } else {
                            $parse_str = parse_url_detail($redirect_to);
                            $wpuid = $parse_str['user_id'];
                        }
                        if ($wpuid) {
                            update_usermeta($wpuid, $tok, array('mediaUserID' => $_GET['mediaUserID']));
                        }
                    }
                }
                return wp_connect_clear_cookie("wp_connect_cookie_bind");
            }
        }
        $user = denglu_userInfo();
        // return var_dump($user);
        if ($username = $user['mediaUserID']) {
            $homepage = $user['homepage'];
            $mediaID = $user['mediaID'];
            $tid = get_tid($mediaID);
            $weibo = get_weibo($tid);
            $mid = str_replace('tid', 'mid', $tid);
            if ($homepage) {
                $id = $weibo[1] . 'id';
                if ($id == 'dtid') {
                    // douban
                    if (strpos($user['profileImageUrl'], 'user_normal.jpg') === false) {
                        $path = explode('/', $user['profileImageUrl']);
                        $douban_uid = (int) substr($path[4], 1);
                    }
                }
                $userid = str_replace($weibo[3], '', $homepage);
            } elseif ($tid == 'qqtid') {
                $id = $weibo[1] . 'id';
                $path = explode('/', $user['profileImageUrl']);
                $userid = $path[5];
                $appid = $path[4];
            } else {
                $id = $mid;
                $userid = $username;
            }
            if ($user['email']) {
                $email = $user['email'];
                if ($id == 'ntid') {
                    // netease
                    $uid = ifabc(email_exists($email), get_user_by_meta_value($id, $userid), get_user_by_meta_value($mid, $username));
                } else {
                    // taobao,msn,facebook
                    $uid = ifab(email_exists($email), get_user_by_meta_value($id, $userid));
                }
            } else {
                $domain = ifab($weibo[4], 'denglu.cc');
                if ($homepage) {
                    $email = $userid . '@' . $domain;
                } elseif ($tid == 'qqtid') {
                    $email = $appid . '/' . $userid . '@qzone.qq.com';
                } else {
                    $email = $username . '@' . $domain;
                }
                if ($id == $mid) {
                    // google,yahoo,baidu,netease163,360,alipay
                    $uid = get_user_by_meta_value($id, $userid);
                } elseif ($id == 'dtid') {
                    // douban
                    if ($douban_uid && $douban_uid != $userid) {
                        $uid = ifab(get_user_by_meta_value($id, $douban_uid), get_user_by_meta_value($id, $userid));
                        $userid = $douban_uid;
                        // old bug
                        $email = $userid . '@' . $domain;
                    } else {
                        $uid = get_user_by_meta_value($id, $userid);
                    }
                } else {
                    // sina,tqq,sohu,netease,renren,kaixin,tianya,twitter,qq
                    $uid = ifab(get_user_by_meta_value($id, $userid), email_exists($email));
                }
            }
            if (is_user_logged_in()) {
                // V2.4.3,登录绑定
                if ($redirect_to == admin_url('profile.php')) {
                    $wpuid = get_current_user_id();
                } else {
                    $parse_str = parse_url_detail($redirect_to);
                    $wpuid = $parse_str['user_id'];
                }
                if ($uid && $wpuid != $uid) {
                    $userinfo = wp_get_user_info($uid);
                    $user_login = $userinfo['user_login'];
                    wp_die("很遗憾!该帐号已被用户名 {$user_login} 绑定,您可以用该 <a href=\"" . wp_logout_url() . "\">用户名</a> 登录,并到 <a href=\"" . admin_url('profile.php') . "\">我的资料</a> 页面解除绑定,再进行绑定该帐号!<strong>如果不能成功,请删除那个WP帐号,再进行绑定!</strong> <a href='{$redirect_to}'>返回</a>");
                } else {
                    update_usermeta($wpuid, $mid, $username);
                    if ($homepage || $tid == 'qqtid') {
                        // sina,tqq,sohu,netease,renren,kaixin,douban,tianya,twitter,facebook,qq
                        update_usermeta($wpuid, $weibo[1] . 'id', $userid);
                        if ($tid == 'qqtid') {
                            update_usermeta($wpuid, $tid, $user['profileImageUrl']);
                        }
                        if (in_array($tid, array('qtid', 'stid', 'ntid', 'shtid', 'ttid'))) {
                            // 微博帐号
                            $nickname = get_user_meta($wpuid, 'login_name', true);
                            $nickname[$weibo[0]] = $tid == 'qtid' || $tid == 'ttid' ? $userid : $user['screenName'];
                            update_usermeta($wpuid, 'login_name', $nickname);
                        }
                    }
                }
            } else {
                $url = ifab($user['url'], $homepage);
                $userinfo = array($tid, $username, $user['screenName'], $user['profileImageUrl'], $url, $userid, $username);
                //tid,username,nick,head,url,userid,mediaUserID
                if ($uid) {
                    wp_connect_login($userinfo, $email, $uid);
                } elseif ($_GET['dl_type'] == 'comment') {
                    // 从评论框登录,跳过强制填写注册信息。V2.3.3
                    $userinfo[1] = ifuser($userinfo[1]);
                    wp_connect_login($userinfo, $email, '', true);
                } else {
                    wp_connect_login($userinfo, $email);
                }
            }
        }
    }
}
Exemplo n.º 4
0
    }
    if (!wp_check_password($password, $userdata->user_pass, $userdata->ID)) {
        return sprintf(__('<strong>ERROR</strong>: The password you entered for the username <strong>%1$s</strong> is incorrect. <a href="%2$s" title="Password Lost and Found">Lost your password</a>?'), $username, site_url('wp-login.php?action=lostpassword', 'login'));
    }
}
$user = wp_connect_get_cookie("wp_connect_cookie_user");
if ($user) {
    $redirect_to = $user[2];
    if ($_POST['login'] && !$_POST['bind']) {
        $user_login = trim($_POST['login']);
        $user_email = trim($_POST['email']);
        $errors = wp_check_new_user($user_login, $user_email);
        if (!$errors) {
            $user[0][1] = $user_login;
            $user[1] = $user_email;
            $user[0][8] = trim($_POST['password']);
            $wpuid = wp_connect_login($user[0], $user[1], '', true);
            header('Location:' . $redirect_to);
        }
    } elseif ($_POST['login'] && $_POST['bind']) {
        $username = trim($_POST['login']);
        $password = trim($_POST['password']);
        $errors = wp_check_bind_user($username, $password);
        if (!$errors) {
            $uid = username_exists($username);
            $wpuid = wp_connect_login($user[0], $user[1], $uid);
            header('Location:' . $redirect_to);
        }
    }
    include 'login.inc.php';
}
Exemplo n.º 5
0
            $client = new RenRenClient();
            $client->setSessionKey($session_key);
            // 调用api时的第一个参数是api方法名。
            // 第二个参数请参考renren.class.php文件中的配置进行设置。
            $renren = $client->POST('users.getInfo');
            //return var_dump($renren);
            $renren = $renren[0];
            $username = $renren['uid'];
            $name = $renren['name'];
            $head = $renren['headurl'];
            $url = 'http://www.renren.com/profile.do?id=' . $username;
            $email = $username . '@renren.com';
            $tid = "rtid";
            $uid = get_user_by_meta_value('renrenid', $username);
            if (!$uid) {
                $uid = email_exists($email);
            }
            $userinfo = array($tid, $username, $name, $head, $url, $username);
            if ($uid) {
                wp_connect_login($userinfo, $email, $uid);
            } else {
                wp_connect_login($userinfo, $email);
            }
            header('Location:' . $redirect_to);
        } else {
            wp_die("获取用户授权信息失败,请重新<a href=" . site_url('wp-login.php', 'login') . ">登录</a> 或者 清除浏览器缓存再试!  <a href='{$redirect_to}'>返回</a>");
        }
    } else {
        wp_die("获取用户授权信息失败,请重新<a href=" . site_url('wp-login.php', 'login') . ">登录</a> 或者 清除浏览器缓存再试!  <a href='{$redirect_to}'>返回</a>");
    }
}
Exemplo n.º 6
0
        } else {
            $user_id = $_SESSION['user_id'];
            wp_user_profile_update($user_id);
            header('Location:' . admin_url('profile.php'));
        }
    }
}
if ($_GET['do'] == "page") {
    $wptm_options = get_option('wptm_options');
    $wptm_advanced = get_option('wptm_advanced');
    $password = $_POST['password'];
    if (isset($_POST['message'])) {
        if ($wptm_options['page_password'] && $password == $wptm_options['page_password'] || is_user_logged_in() && function_exists('wp_connect_advanced') && $wptm_advanced['registered_users']) {
            wp_update_page();
        } else {
            echo 'pwderror';
        }
    }
}
if ($_GET['do'] == "login") {
    if ($_SESSION['wp_url_back']) {
        $redirect_to = $_SESSION['wp_url_back'];
    } else {
        $redirect_to = get_bloginfo('url');
    }
    $login_userinfo = $_SESSION['wp_login_userinfo'];
    if ($login_userinfo) {
        wp_connect_login($login_userinfo[0], $login_userinfo[1]);
        header('Location:' . $redirect_to);
    }
}