91 lines
1.9 KiB
PHP
91 lines
1.9 KiB
PHP
<?php
|
|
|
|
class User extends CActiveRecord
|
|
{
|
|
/**
|
|
* The followings are the available columns in table 'tbl_user':
|
|
* @var integer $id
|
|
* @var string $username
|
|
* @var string $password
|
|
* @var string $email
|
|
* @var string $profile
|
|
*/
|
|
|
|
/**
|
|
* Returns the static model of the specified AR class.
|
|
* @return CActiveRecord the static model class
|
|
*/
|
|
public static function model($className=__CLASS__)
|
|
{
|
|
return parent::model($className);
|
|
}
|
|
|
|
/**
|
|
* @return string the associated database table name
|
|
*/
|
|
public function tableName()
|
|
{
|
|
return '{{user}}';
|
|
}
|
|
|
|
/**
|
|
* @return array validation rules for model attributes.
|
|
*/
|
|
public function rules()
|
|
{
|
|
// NOTE: you should only define rules for those attributes that
|
|
// will receive user inputs.
|
|
return array(
|
|
array('username, password, email', 'required'),
|
|
array('username, password, email', 'length', 'max'=>128),
|
|
array('profile', 'safe'),
|
|
);
|
|
}
|
|
|
|
/**
|
|
* @return array relational rules.
|
|
*/
|
|
public function relations()
|
|
{
|
|
// NOTE: you may need to adjust the relation name and the related
|
|
// class name for the relations automatically generated below.
|
|
return array(
|
|
'posts' => array(self::HAS_MANY, 'Post', 'author_id'),
|
|
);
|
|
}
|
|
|
|
/**
|
|
* @return array customized attribute labels (name=>label)
|
|
*/
|
|
public function attributeLabels()
|
|
{
|
|
return array(
|
|
'id' => 'Id',
|
|
'username' => 'Username',
|
|
'password' => 'Password',
|
|
'email' => 'Email',
|
|
'profile' => 'Profile',
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Checks if the given password is correct.
|
|
* @param string the password to be validated
|
|
* @return boolean whether the password is valid
|
|
*/
|
|
public function validatePassword($password)
|
|
{
|
|
return CPasswordHelper::verifyPassword($password,$this->password);
|
|
}
|
|
|
|
/**
|
|
* Generates the password hash.
|
|
* @param string password
|
|
* @return string hash
|
|
*/
|
|
public function hashPassword($password)
|
|
{
|
|
return CPasswordHelper::hashPassword($password);
|
|
}
|
|
}
|