/** @inheritdoc */ public static function findIdentityByAccessToken($token, $type = null) { /** @var Token $token */ $token = Token::find()->with('user')->byToken($token)->one(); if (!$token) { return null; } return $token->user; }
public function init() { parent::init(); $this->userTbl = User::tableName(); $this->projectTbl = Project::tableName(); $this->memberTbl = ProjectMember::tableName(); $this->roleTbl = ProjectRole::tableName(); $this->ticketTbl = Ticket::tableName(); $this->ticketGroupTbl = TicketGroup::tableName(); $this->tokenTbl = Token::tableName(); $this->projectUserFk = $this->createFkData($this->projectTbl, 'owner_id', $this->userTbl, 'id', 'cascade', 'cascade'); $this->memberUserFk = $this->createFkData($this->memberTbl, 'user_id', $this->userTbl, 'id', 'cascade', 'cascade'); $this->memberRoleFk = $this->createFkData($this->memberTbl, 'role_id', $this->roleTbl, 'id', 'restrict', 'cascade'); $this->memberProjectFk = $this->createFkData($this->memberTbl, 'project_id', $this->projectTbl, 'id', 'cascade', 'cascade'); $this->ticketUserFk = $this->createFkData($this->ticketTbl, 'creator_id', $this->userTbl, 'id', 'cascade', 'cascade'); $this->ticketGroupFk = $this->createFkData($this->ticketTbl, 'group_id', $this->ticketGroupTbl, 'id', 'restrict', 'cascade'); $this->ticketProjectFk = $this->createFkData($this->ticketTbl, 'project_id', $this->projectTbl, 'id', 'cascade', 'cascade'); $this->roleProjectFk = $this->createFkData($this->roleTbl, 'project_id', $this->projectTbl, 'id', 'cascade', 'cascade'); $this->groupProjectFk = $this->createFkData($this->ticketGroupTbl, 'project_id', $this->projectTbl, 'id', 'cascade', 'cascade'); $this->tokenUserFk = $this->createFkData($this->tokenTbl, 'user_id', $this->userTbl, 'id', 'cascade', 'cascade'); }
/** * @api {post} /users/token Generate new token for user. * @apiName GenerateToken * @apiGroup Users * * @apiParam {String} email Email of user * @apiParam {String} password Password of user * * @apiSuccess {String} token New auth token * @apiSuccess {String} created_at Date created */ public function actionGenerateToken() { $request = \Yii::$app->getRequest(); $user = User::findByEmailAndPassword($request->post('email'), $request->post('password')); if (!$user) { throw new NotFoundHttpException(); } $token = new Token(); if ($token->generate($user)) { return $token; } else { throw new ModelValidateException($token); } }