diff --git a/app/library/Auth.php b/app/library/Auth.php index f65579c..9f1a841 100644 --- a/app/library/Auth.php +++ b/app/library/Auth.php @@ -45,32 +45,20 @@ class Auth extends Component * * @param UserDataInterface $auth */ - public function loginOauth(UserDataInterface $auth) + public function loginOauth(UserDataInterface $data) { - // Look for a user with this email. - $user = User::findFirstByEmail($auth->getEmail()); + $user = User::findFirstByOAuthID($data); if (!$user) { // Did not find any user. create him. - if (strlen($auth->getUsername()) > 0) { - $name = $auth->getUsername(); - } else if(strlen($auth->getName()) > 0) { - $name = $auth->getName(); - } else { - $name = ''; - } - - $user = new User(); - $user->setEmail($auth->getEmail()) - ->setUsername($name); - + $user = User::createFromOAuthData($data); $user->save(); } $this->setIdentity($user->getId()); $this->_eventsManager->fire('auth:onLogin', $this, - "OAuth {$auth->getProvider()}"); + "OAuth {$data->getProvider()}"); } /**