Пример #1
0
 * 请勿出售本程序或其修改版,请勿利用本程序或其修改版进行任何商业活动。
 */
session_start();
require_once 'config.php';
require_once 'function.php';
$u = './';
$c_log = chklog();
if ($c_log) {
    $u = './?m=profile&t=sync&n=google';
} else {
    $u = './?m=login&t=google';
}
if ($config['is_google'] > 0 && $config['google_key'] != '' && $config['google_se'] != '') {
    if (isset($_GET['code']) && trim($_GET['code']) != '') {
        require_once 'lib/google.php';
        $db_o = new googlePHP($config['google_key'], $config['google_se']);
        $result = $db_o->access_token($config['site_url'] . 'google_callback.php', $_GET['code']);
    }
    if (isset($result['access_token']) && $result['access_token'] != '') {
        $s_t = $result['access_token'];
        $s_r = $result['refresh_token'];
        $edate = time() + $result['expires_in'];
        if ($c_log) {
            $ar = getainfo($_SESSION[$config['u_hash']], 'id, name');
            $s_dby = sprintf('select id from %s where aid=%s and name=%s limit 1', $dbprefix . 'm_sync', $ar['id'], SQLString('google', 'text'));
            $q_dby = mysql_query($s_dby) or die('');
            $r_dby = mysql_fetch_assoc($q_dby);
            if (mysql_num_rows($q_dby) > 0) {
                $u_db = sprintf('update %s set s_t=%s, s_r=%s, edate=%s where id=%s', $dbprefix . 'm_sync', SQLString($s_t, 'text'), SQLString($s_r, 'text'), SQLString($edate, 'int'), $r_dby['id']);
                $result = mysql_query($u_db) or die('');
            } else {
Пример #2
0
             $result = mysql_query($d_db) or die('');
             $me_url = $gg_a['link'];
             if ($r_dby['s_n'] != $me_url || $r_dby['s_id'] != $gg_a['id']) {
                 $u_db = sprintf('update %s set s_n=%s, s_id=%s where id=%s', $dbprefix . 'm_sync', SQLString($me_url, 'text'), SQLString($gg_a['id'], 'text'), $r_dby['id']);
                 $result = mysql_query($u_db) or die('');
             }
             $content .= '当前已绑定Google账号<table width="200"><tr><td align="center"><img src="' . $gg_a['picture'] . '" alt=""/><br/><a href="' . $me_url . '" target="_blank">' . $gg_a['name'] . '</a>(<a href="?m=profile&amp;t=sync&amp;n=' . $nct . '&amp;lt=1">取消绑定</a>)</td></tr></table>';
             $content .= '<br/><br/><form method="post" action=""><input type="checkbox" name="is_show" value="1"' . ($r_dby['is_show'] > 0 ? ' checked="checked"' : '') . '/>隐藏已绑定Google账号相关信息<br/><input type="submit" value="更新" class="button"/><input type="hidden" name="isl_google_h" value="' . $r_dby['id'] . '"/></form>';
         } else {
             $d_db = sprintf('delete from %s where aid=%s and name=%s', $dbprefix . 'm_sync', $r_dbu['id'], SQLString($nct, 'text'));
             $result = mysql_query($d_db) or die('');
         }
     }
     mysql_free_result($q_dby);
     if ($is_sync == 0) {
         $gg_o = new googlePHP($config['google_key'], $config['google_se']);
         $aurl = $gg_o->login_url($config['site_url'] . 'google_callback.php', 'https://www.googleapis.com/auth/userinfo.profile');
         $content .= '<a href="' . $aurl . '">点击此处和您的Google账号建立连接</a>';
     }
     $content .= '<br/><br/>绑定Google账号后将实现以下功能:<ol><li>使用Google账号登录</li><li>注:Google账号不可以重复绑定,用户绑定后,其他用户绑定的同一Google账号将自动解除绑定</li></ol>';
     break;
 case 'live':
     if (isset($_GET['lt']) && $_GET['lt'] == 1) {
         $d_db = sprintf('delete from %s where aid=%s and name=%s', $dbprefix . 'm_sync', $r_dbu['id'], SQLString($nct, 'text'));
         $result = mysql_query($d_db) or die('');
         header('Location:./?m=profile&t=sync&n=' . $nct);
         exit;
     }
     require_once 'lib/live.php';
     $is_sync = 0;
     $s_dby = sprintf('select id, s_id, s_t, s_r, edate, is_show from %s where aid=%s and name=%s limit 1', $dbprefix . 'm_sync', $r_dbu['id'], SQLString($nct, 'text'));
Пример #3
0
 case 'baidu':
     if ($config['is_baidu'] > 0 && $config['baidu_key'] != '' && $config['baidu_se'] != '') {
         require_once 'lib/baidu.php';
         $o = new baiduPHP($config['baidu_key'], $config['baidu_se']);
         $result = $o->access_token_refresh($r_dby['s_r']);
         if (isset($result['access_token']) && $result['access_token'] != '') {
             $r_dby['s_t'] = $result['access_token'];
             $r_dby['s_r'] = $result['refresh_token'];
             $r_dby['edate'] = time() + $result['expires_in'];
         }
     }
     break;
 case 'google':
     if ($config['is_google'] > 0 && $config['google_key'] != '' && $config['google_se'] != '') {
         require_once 'lib/google.php';
         $o = new googlePHP($config['google_key'], $config['google_se']);
         $result = $o->access_token_refresh($r_dby['s_r']);
         if (isset($result['access_token']) && $result['access_token'] != '') {
             $r_dby['s_t'] = $result['access_token'];
             $r_dby['edate'] = time() + $result['expires_in'];
         }
     }
     break;
 case 'live':
     if ($config['is_live'] > 0 && $config['live_key'] != '' && $config['live_se'] != '') {
         require_once 'lib/live.php';
         $o = new livePHP($config['live_key'], $config['live_se']);
         $result = $o->access_token_refresh($r_dby['s_r']);
         if (isset($result['access_token']) && $result['access_token'] != '') {
             $r_dby['s_t'] = $result['access_token'];
             $r_dby['s_r'] = $result['refresh_token'];