123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- <?php
- namespace app\models;
- class User extends \yii\base\BaseObject implements \yii\web\IdentityInterface
- {
- public $id;
- public $username;
- public $password;
- public $authKey;
- public $accessToken;
- private static $users = [
- '100' => [
- 'id' => '100',
- 'username' => 'admin',
- 'password' => 'admin',
- 'authKey' => 'test100key',
- 'accessToken' => '100-token',
- ],
- '101' => [
- 'id' => '101',
- 'username' => 'demo',
- 'password' => 'demo',
- 'authKey' => 'test101key',
- 'accessToken' => '101-token',
- ],
- ];
- /**
- * {@inheritdoc}
- */
- public static function findIdentity($id)
- {
- return isset(self::$users[$id]) ? new static(self::$users[$id]) : null;
- }
- /**
- * {@inheritdoc}
- */
- public static function findIdentityByAccessToken($token, $type = null)
- {
- foreach (self::$users as $user) {
- if ($user['accessToken'] === $token) {
- return new static($user);
- }
- }
- return null;
- }
- /**
- * Finds user by username
- *
- * @param string $username
- * @return static|null
- */
- public static function findByUsername($username)
- {
- foreach (self::$users as $user) {
- if (strcasecmp($user['username'], $username) === 0) {
- return new static($user);
- }
- }
- return null;
- }
- /**
- * {@inheritdoc}
- */
- public function getId()
- {
- return $this->id;
- }
- /**
- * {@inheritdoc}
- */
- public function getAuthKey()
- {
- return $this->authKey;
- }
- /**
- * {@inheritdoc}
- */
- public function validateAuthKey($authKey)
- {
- return $this->authKey === $authKey;
- }
- /**
- * Validates password
- *
- * @param string $password password to validate
- * @return bool if password provided is valid for current user
- */
- public function validatePassword($password)
- {
- return $this->password === $password;
- }
- }
|