exists) { $basename = $details->nickname ?: ($details->full_name ?: $details->email); $user->name = $basename; $cnt = 1; while (User::where('name', $user->name)->exists()) { $cnt++; $user->name = $basename . $cnt; } } // set e-mail from provider data, only if user e-mail is empty if ("$user->email" === "") { $user->email = $details->email; } $user->confirmed = true; // mark as confirmed, we trust the provider }); } catch (ApplicationRejectedException $e) { abort(401, $e->getMessage()); } catch (InvalidAuthorizationCodeException $e) { abort(401, $e->getMessage()); } return Redirect::intended(); }; Route::get('/auth/github/authorize', function() { return SocialAuth::authorize('github'); })->name('oauth-github-authorize'); Route::get('/auth/github/callback', function() { return _loginVia('github'); })->name('oauth-github-callback'); Route::get('/auth/google/authorize', function() { return SocialAuth::authorize('google'); })->name('oauth-google-authorize'); Route::get('/auth/google/callback', function() { return _loginVia('google'); })->name('oauth-google-callback'); Route::get('/auth/facebook/authorize', function() { return SocialAuth::authorize('facebook'); })->name('oauth-facebook-authorize'); Route::get('/auth/facebook/callback', function() { return _loginVia('facebook'); })->name('oauth-facebook-callback'); /* Route::get('/auth/stack/authorize', function() { return SocialAuth::authorize('stack'); })->name('oauth-stack-authorize'); Route::get('/auth/stack/callback', function() { return _loginVia('stack'); })->name('oauth-stack-callback'); */