コード例 #1
0
 /**
  * Finds user by [[username]]
  *
  * @return User|null
  */
 public function getUser()
 {
     if ($this->_user === false) {
         $this->_user = \common\models\entities\Member::findByUsername($this->username);
     }
     return $this->_user;
 }
コード例 #2
0
 public function socialSuccessCallback($client)
 {
     $attributes = $client->getUserAttributes();
     //print_r($attributes);exit;
     $serviceName = strtolower($client->getId());
     $_info = Yii::$app->socialLogin->getAttributes($serviceName, $attributes);
     $username = "******"id"]}@{$serviceName}.id";
     $password = "******"id"]}_{$serviceName}_email";
     //登入成功,查詢是否已有帳號
     $session = Yii::$app->session;
     unset($session['tmpUser']);
     $userModel = Member::findByUsername($username);
     if (!$userModel || $userModel->status == 1) {
         //建新的
         $userModel = new Member();
         //寫入
         $userModel->attributes = array("username" => $username, "password" => $password, "name" => $_info["name"], "nickname" => $_info["name"], "social_type" => $serviceName, "email" => @$_info["email"], "status" => 1);
         $session['tmpUser'] = $userModel;
         return $this->redirect(["user/fb-register"]);
     }
     //登入
     $this->_userLogin($username, $password);
 }