change login triggers in login function,add session write function in Auth service

This commit is contained in:
Jianxuan Li 2015-01-18 23:24:31 +08:00
parent cb9e731792
commit 68f53c9d9a
2 changed files with 15 additions and 2 deletions

View File

@ -7,6 +7,7 @@ use Zend\Authentication\Storage\Session as SessionStorage;
class Auth
{
public $auth;
function __construct($getAuthService = false)
{
$config = Config::get();
@ -25,11 +26,23 @@ class Auth
return $this->auth->clearIdentity();
}
public function getIdentity($field)
public function getIdentity($field = "")
{
if(empty($field))
return $this->auth->getIdentity();
if(isset($this->auth->getIdentity()->$field))
return $this->auth->getIdentity()->$field;
else
return null;
}
public function write($user)
{
if(is_array($user))
$user = (object)$user;
$this->auth->getStorage()->write($user);
}
}

View File

@ -130,7 +130,7 @@ class Account extends AbstractEventManager implements ServiceManagerAwareInterfa
//登陆
public function login($data)
{
$results = $this->getEventManager()->trigger('login.checkParam', $this, compact('data'));
$results = $this->getEventManager()->trigger('login.pre', $this, compact('data'));
$cache_data = $results->last();
if($cache_data !== true)