И сделат настраиваемый с помощью Yii::app()->params.
На основе этого кода.
Код: Выделить всё
/**
* Authenticates the password.
* This is the 'authenticate' validator as declared in rules().
*/
public function authenticate($attribute,$params)
{
if(!$this->hasErrors())
{
$this->_identity=new UserIdentity($this->username,$this->password);
var_dump($this->_identity); exit;
if(!$this->_identity->authenticate()) {
if ($this->_identity->errorCode == UserIdentity::ERROR_USER_DISABLED)
$this->addError('username','Login for this user has been disabled, please contact Catalyst for more information.');
else
$this->addError('password','Incorrect username or password.');
}
}
}
/**
* Logs in the user using the given username and password in the model.
* @return boolean whether login is successful
*/
public function login()
{
if($this->_identity===null)
{
$this->_identity=new UserIdentity($this->username,$this->password);
$this->_identity->authenticate();
}
if($this->_identity->errorCode===UserIdentity::ERROR_NONE)
{
$duration=$this->rememberMe ? 3600*24*30 : 0; // 30 days
Yii::app()->user->login($this->_identity,$duration);
// Save the user model to set update_time
User::model()->findByPk($this->_identity->getId())->save();
return true;
}
else
return false;
}
}