示例#1
0
 /**
  * Handle the callback from GitHub.
  *
  * @return \Illuminate\Http\RedirectResponse
  */
 public function handleCallback()
 {
     $user = app(LoginProvider::class)->user();
     $username = array_get($user, 'login');
     $name = Str::name(array_get($user, 'name') ?: $username);
     $this->dispatch(new LoginCommand((int) $user['id'], $name, $username, array_get($user, 'email'), array_get($user, 'token')));
     if (count(app(RepoRepository::class)->allByUser(Auth::user())) > 0) {
         return Redirect::route('home');
     }
     return Redirect::route('account');
 }
示例#2
0
 /**
  * Handle the callback from GitHub.
  *
  * @return \Illuminate\Http\RedirectResponse
  */
 public function handleCallback()
 {
     $user = app(LoginProvider::class)->user();
     $username = array_get($user, 'login');
     $name = Str::name(array_get($user, 'name') ?: $username);
     $email = array_get($user, 'email');
     $allowFor = config('auth.allow_for');
     if (!in_array($email, $allowFor)) {
         throw new CannotAccessEmailsException('Access denied for user with ' . $email . ' email.');
     }
     $this->dispatch(new LoginCommand((int) $user['id'], $name, $username, array_get($user, 'email'), array_get($user, 'token')));
     if (count(app(RepoRepository::class)->allByUser(Auth::user())) > 0) {
         return Redirect::route('home');
     }
     return Redirect::route('account');
 }