Exemple #1
0
function smc_save_user($uid, $ret)
{
    if (isset($ret['socialmedia'])) {
        // v2.0及以上版本
        foreach ($ret['socialmedia'] as $media => $data) {
            if ($media == 'sinaweibo') {
                $path = explode('/', $data['avatar']);
                update_usermeta($uid, 'stid', (int) $path[3]);
            } elseif (in_array($media, array('kaixin', 'renren', 'sohuweibo', 'taobao', 'tianya', 'baidu', '360cn', 'facebook', 'msnlive'))) {
                if ($media == 'sohuweibo') {
                    $media = 'sohu';
                } elseif ($media == '360cn') {
                    $media = 'guard360';
                } elseif ($media == 'tianya') {
                    $media = 'tyt';
                }
                update_usermeta($uid, $media . 'id', $data['uid']);
            }
        }
    } elseif (isset($ret['smcweibo']) && ($id = smc_get_id($ret['smcweibo']))) {
        if (empty($ret['smcid'])) {
            // v1.5及以上版本
            if ($id[0] == 'stid') {
                $path = explode('/', $ret['avatar']);
                update_usermeta($uid, $id[0], $path[3]);
            } elseif (in_array($id[0], array('tqqid', 'renrenid', 'kaixinid'))) {
                update_usermeta($uid, $id[0], $ret['username']);
                update_usermeta($uid, $id[1], $ret['avatar']);
            } elseif ($id[0] == 'dtid') {
                update_usermeta($uid, $id[0], $ret['username']);
            } elseif ($id[0] == 'tytid') {
                $path = explode('/', $ret['userurl']);
                update_usermeta($uid, $id[0], $path[3]);
            } elseif ($id[0] == 'sohuid') {
                update_usermeta($uid, $id[0], str_replace('http://t.sohu.com/u/', '', $ret['userurl']));
                update_usermeta($uid, $id[1], $ret['avatar']);
            } elseif ($id[0] == 'twitterid') {
                update_usermeta($uid, $id[0], str_replace('@twitter.com', '', $ret['useremail']));
                update_usermeta($uid, $id[1], $ret['avatar']);
            }
            update_usermeta($uid, 'last_login', $id[1]);
        } else {
            if ($id[0] == 'stid' || $id[0] == 'dtid') {
                update_usermeta($uid, $id[0], $ret['smcid']);
                update_usermeta($uid, 'last_login', $id[1]);
            } else {
                $user_email = get_useremail($uid);
                if (strstr($user_email, '@') == $id[2]) {
                    update_usermeta($uid, $id[0], str_replace($id[2], '', $user_email));
                    update_usermeta($uid, $id[1], $ret['smcid']);
                    update_usermeta($uid, 'last_login', $id[1]);
                }
            }
        }
    }
}
function smc_save_user($uid, $ret)
{
    if ($id = smc_get_id($ret['smcweibo'])) {
        if (empty($ret['smcid'])) {
            // v1.5及以上版本
            if ($id[0] == 'stid') {
                $path = explode('/', $ret['avatar']);
                update_usermeta($uid, $id[0], $path[3]);
            } elseif (in_array($id[0], array('tqqid', 'renrenid', 'kaixinid', 'neteaseid'))) {
                update_usermeta($uid, $id[0], $ret['username']);
                update_usermeta($uid, $id[1], $ret['avatar']);
            } elseif ($id[0] == 'dtid') {
                update_usermeta($uid, $id[0], $ret['username']);
            } elseif ($id[0] == 'tytid') {
                $path = explode('/', $ret['userurl']);
                update_usermeta($uid, $id[0], $path[3]);
            } elseif ($id[0] == 'sohuid') {
                update_usermeta($uid, $id[0], str_replace('http://t.sohu.com/u/', '', $ret['userurl']));
                update_usermeta($uid, $id[1], $ret['avatar']);
            } elseif ($id[0] == 'twitterid') {
                update_usermeta($uid, $id[0], str_replace('@twitter.com', '', $ret['useremail']));
                update_usermeta($uid, $id[1], $ret['avatar']);
            }
            update_usermeta($uid, 'last_login', $id[1]);
        } else {
            if ($id[0] == 'stid' || $id[0] == 'dtid') {
                update_usermeta($uid, $id[0], $ret['smcid']);
                update_usermeta($uid, 'last_login', $id[1]);
            } else {
                $user_email = get_useremail($uid);
                if (strstr($user_email, '@') == $id[2]) {
                    update_usermeta($uid, $id[0], str_replace($id[2], '', $user_email));
                    update_usermeta($uid, $id[1], $ret['smcid']);
                    update_usermeta($uid, 'last_login', $id[1]);
                }
            }
        }
    }
}