コード例 #1
0
 /**
  * Load user details based on configured authentication fields
  *
  * @param  string     $username
  * @return array|null
  */
 public function getUserDetails($username)
 {
     $user = null;
     $fields = $this->authOptions->getAuthIdentityFields();
     while (!is_object($user) && count($fields) > 0) {
         $mode = array_shift($fields);
         switch ($mode) {
             case 'username':
                 $user = $this->mapper->findByUsername($username);
                 break;
             case 'email':
                 $user = $this->mapper->findByEmail($username);
                 break;
         }
     }
     if (!$user instanceof UserInterface) {
         return NULL;
     }
     return array('user_id' => $user->getId(), 'username' => $user->getUsername(), 'email' => $user->getEmail(), 'display_name' => $user->getDisplayName(), 'state' => $user->getState());
 }