|
@@ -27,11 +27,12 @@ class Login extends Controller{
|
|
|
|
|
|
public function doGet() {
|
|
|
$refer = Request::g ( 'referer' );
|
|
|
+ $cas_uid = Request::g ( 'cas_uid' );
|
|
|
|
|
|
- $this->objMemcached->set($this->refer, $refer);
|
|
|
+ $this->objMemcached->set($this->refer . '_' . $cas_uid, $refer);
|
|
|
|
|
|
$host = Config::getInstance ()->get ( 'App_Id' );
|
|
|
- $callback = urlencode($host . '?c=Login&a=Callback');
|
|
|
+ $callback = urlencode($host . '?c=Login&a=Callback&cas_uid=' . $cas_uid);
|
|
|
|
|
|
$time = time() . rand(0,100);
|
|
|
$url = 'https://open.weixin.qq.com/connect/qrconnect';
|
|
@@ -45,6 +46,10 @@ class Login extends Controller{
|
|
|
}
|
|
|
|
|
|
public function doCallback() {
|
|
|
+
|
|
|
+ $cas_uid = Request::g ( 'cas_uid' );
|
|
|
+ $token = false;
|
|
|
+
|
|
|
$token = $this->objMemcached->get('access_token');
|
|
|
$openid = $this->objMemcached->get('openid');
|
|
|
$data = array();
|
|
@@ -62,6 +67,7 @@ class Login extends Controller{
|
|
|
$data['openid'] = $openid;
|
|
|
}
|
|
|
}
|
|
|
+ */
|
|
|
|
|
|
if (!$token) {
|
|
|
$code = Request::g ( 'code' );
|
|
@@ -73,8 +79,8 @@ class Login extends Controller{
|
|
|
|
|
|
if (isset($data['access_token']) && $data['access_token']) {
|
|
|
|
|
|
- $this->objMemcached->set('access_token', $data['access_token']);
|
|
|
- $this->objMemcached->set('openid', $data['openid']);
|
|
|
+
|
|
|
+
|
|
|
|
|
|
$url = 'https://api.weixin.qq.com/sns/userinfo?access_token=' . $data['access_token'] . '&openid=' . $data['openid'] . '&lang=zh_CN';
|
|
|
|
|
@@ -83,7 +89,7 @@ class Login extends Controller{
|
|
|
$data = json_decode($data, true);
|
|
|
|
|
|
if (isset($data['nickname']) && $data['nickname']) {
|
|
|
- $refer = urldecode($this->objMemcached->get($this->refer));
|
|
|
+ $refer = urldecode($this->objMemcached->get($this->refer . '_' . $cas_uid));
|
|
|
$refer = str_replace('&', '&', $refer);
|
|
|
|
|
|
$param['nickname'] = $data['nickname'];
|