Esempio n. 1
0
 public function loginWithAccessToken(array $accessToken)
 {
     $accessTokenEntity = new AccessTokens();
     $accessTokenEntity->assign($accessToken);
     $token = $accessTokenEntity->findFirst(array("adapterKey = :adapterKey: AND remoteUserId = :remoteUserId: AND version = :version:", 'bind' => array('adapterKey' => $accessToken['adapterKey'], 'version' => $accessToken['version'], 'remoteUserId' => $accessToken['remoteUserId'])));
     if (!$token || !$token->userId) {
         return false;
     }
     $userModel = new UserLogin();
     $userModel->assign(array('id' => $token->userId));
     return $userModel->login();
 }
Esempio n. 2
0
 public function bindUserOAuth($userId, array $accessToken)
 {
     $token = AccessTokens::findFirst(array("conditions" => "adapterKey = :adapterKey: AND version = :version: AND remoteUserId = :remoteUserId:", "bind" => array('adapterKey' => $accessToken['adapterKey'], 'version' => $accessToken['version'], 'remoteUserId' => $accessToken['remoteUserId'])));
     if ($token) {
         $token->userId = $userId;
         if (!$token->save()) {
             throw new Exception\RuntimeException('ERR_OAUTH_TOKEN_UPDATE_FAILED');
         }
         return $token;
     } else {
         $accessTokenEntity = new AccessTokens();
         $accessTokenEntity->assign($accessToken);
         $accessTokenEntity->tokenStatus = 'active';
         $accessTokenEntity->userId = $userId;
         if (!$accessTokenEntity->save()) {
             throw new Exception\RuntimeException('ERR_OAUTH_TOKEN_UPDATE_FAILED');
         }
         return $token;
     }
 }