findIdentityByAccessToken() 공개 정적인 메소드

public static findIdentityByAccessToken ( $token, $type = null )
예제 #1
0
파일: Module.php 프로젝트: sourcetoad/bbii2
 public function init()
 {
     $this->registerAssets();
     parent::init();
     // If API log in is allowed AND the auth-token is provided.
     // todo refactor this, ATM a clug to get it working - DJE : 2015-07-23
     if ($this->allowAPILogin && (Yii::$app->request->get('auth-token') != false && Yii::$app->request->get('auth-token') !== null)) {
         /* Yii::$app->response->format = \yii\web\Response::FORMAT_RAW;
            $headers = Yii::$app->response->headers;
            $headers->add('Content-Type', 'application/json; charset=utf-8'); */
         // Guest user still needs session to hide header
         if (Yii::$app->request->get('auth-token') != "guest") {
             $userMDL = User::findIdentityByAccessToken(Yii::$app->request->get('auth-token'));
             // if the user was successfully logged in, return a message saying so
             if (Yii::$app->user->login($userMDL)) {
                 //$returnData = ['status' => 'success' ];
             } else {
                 //$returnData = ['status' => 'failed'];
             }
             //echo json_encode( $returnData );
         }
         Yii::$app->session->set('mobile', 'true');
         Yii::$app->response->redirect(\Yii::$app->urlManager->createAbsoluteUrl('forum'));
         Yii::$app->end();
     }
     // @depricated 2.0.0 Use the parent applications error settings
     /*
     \Yii::$app->setComponents(
         array(
             'errorHandler' => [
                 'errorAction' => 'site/error'
             ],
         )
     );
     */
     // @todo no longer needed per Yii2
     /*
     // import the module-level models and components
     $this->setImport(array(
         $this->id.'.models.*',
         $this->id.'.components.*',
     ));
     */
 }
예제 #2
0
파일: Stream.php 프로젝트: pylypen/api-side
 /**
  * @inheritdoc
  */
 public function fields()
 {
     $fields = parent::fields();
     $user = User::findIdentityByAccessToken(\Yii::$app->request->get('access-token'));
     if (is_object($user) && $this->user_id == $user->user_id) {
         $fields['auth'] = function () {
             $user = $this->getUser();
             return ['stream_userid' => $user->stream_userid, 'stream_username' => $user->stream_username, 'stream_password' => $user->stream_password];
         };
     } else {
         $fields = [];
     }
     $fields['public_url'] = function () {
         $name = explode("=", $this->stream_stream);
         if (is_array($name) && count($name) === 3) {
             $file = $name[2];
             return "http://rrr.sz.xlcdn.com/?account=gtecmedia&file={$file}&type=live&service=wowza&output=player";
         }
         return null;
     };
     return $fields;
 }
예제 #3
0
 public function beforeSave($insert)
 {
     $user = User::findIdentityByAccessToken(Yii::$app->request->get('access-token'));
     $this->review_user_id = $user->user_id;
     return $this->review_rating > 0 ? true : false;
 }