Blame view

backend/models/User.php 2.57 KB
d8d0c38c   Administrator   add active menu
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
  <?php
  
  namespace backend\models;
  
  use developeruz\db_rbac\interfaces\UserRbacInterface;
  use common\models\Share;
  use common\modules\comment\models\Comment;
  use common\modules\comment\models\Rating;
  use Yii;
  
  /**
   * This is the model class for table "user".
   *
   * @property integer $id
   * @property string $username
   * @property string $auth_key
   * @property string $password_hash
   * @property string $password_reset_token
   * @property string $email
   * @property integer $status
   * @property integer $created_at
   * @property integer $updated_at
   *
   * @property Comment[] $comments
   * @property Rating[] $ratings
   * @property Share[] $shares
   */
  class User extends \common\models\User implements UserRbacInterface
  {
      /**
       * @inheritdoc
       */
      public static function tableName()
      {
          return 'user';
      }
  
      /**
       * @inheritdoc
       */
      public function rules()
      {
          return [
              [['username', 'auth_key', 'password_hash', 'email'], 'required'],
              [['status', 'created_at', 'updated_at'], 'integer'],
              [['username', 'password_hash', 'password_reset_token', 'email'], 'string', 'max' => 255],
              [['auth_key'], 'string', 'max' => 32],
              [['email'], 'unique'],
              [['password_reset_token'], 'unique'],
              [['username'], 'unique'],
          ];
      }
  
      /**
       * @inheritdoc
       */
      public function attributeLabels()
      {
          return [
              'id' => 'ID',
              'username' => 'Username',
              'auth_key' => 'Auth Key',
              'password_hash' => 'Password Hash',
              'password_reset_token' => 'Password Reset Token',
              'email' => 'Email',
              'status' => 'Status',
              'created_at' => 'Created At',
              'updated_at' => 'Updated At',
          ];
      }
  
      /**
       * @return \yii\db\ActiveQuery
       */
      public function getComments()
      {
          return $this->hasMany(Comment::className(), ['user_id' => 'id']);
      }
  
      /**
       * @return \yii\db\ActiveQuery
       */
      public function getRatings()
      {
          return $this->hasMany(Rating::className(), ['user_id' => 'id']);
      }
  
      /**
       * @return \yii\db\ActiveQuery
       */
      public function getShares()
      {
          return $this->hasMany(Share::className(), ['user_id' => 'id']);
      }
  
      public function getId()
      {
          return $this->getPrimaryKey();
      }
  
      public function getUserName()
      {
          return $this->username;
      }
  
      public static function findIdentity($id)
      {
          return static::findOne(['id' => $id, 'status' => self::STATUS_ACTIVE]);
      }
  
  }