38 lines
967 B
PHP
38 lines
967 B
PHP
<?php
|
|
|
|
/**
|
|
* UserIdentity represents the data needed to identity a user.
|
|
* It contains the authentication method that checks if the provided
|
|
* data can identity the user.
|
|
*/
|
|
class UserIdentity extends CUserIdentity
|
|
{
|
|
/**
|
|
* Authenticates a user.
|
|
* The example implementation makes sure if the username and password
|
|
* are both 'demo'.
|
|
* In practical applications, this should be changed to authenticate
|
|
* against some persistent user identity storage (e.g. database).
|
|
* @return boolean whether authentication succeeds.
|
|
*/
|
|
public function authenticate()
|
|
{
|
|
$admin = User::model()->find('username=:username', array('username'=>$this->username));
|
|
|
|
if ($admin === null)
|
|
{
|
|
$this->errorCode=self::ERROR_USERNAME_INVALID;
|
|
return false;
|
|
}
|
|
|
|
if (crypt($this->password, $admin->password) == $admin->password)
|
|
{
|
|
$this->errorCode=self::ERROR_NONE;
|
|
return true;
|
|
}
|
|
|
|
$this->errorCode=self::ERROR_PASSWORD_INVALID;
|
|
return false;
|
|
}
|
|
|
|
} |