datatable.directory codebase
				https://datatable.directory/
			
			
		
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							95 lines
						
					
					
						
							2.6 KiB
						
					
					
				
			
		
		
	
	
							95 lines
						
					
					
						
							2.6 KiB
						
					
					
				| <?php
 | |
| use SocialNorm\Exceptions\ApplicationRejectedException;
 | |
| use SocialNorm\Exceptions\InvalidAuthorizationCodeException;
 | |
| use SocialNorm\ProviderUser;
 | |
| 
 | |
| /*
 | |
| |--------------------------------------------------------------------------
 | |
| | Web Routes
 | |
| |--------------------------------------------------------------------------
 | |
| |
 | |
| | Here is where you can register web routes for your application. These
 | |
| | routes are loaded by the RouteServiceProvider within a group which
 | |
| | contains the "web" middleware group. Now create something great!
 | |
| |
 | |
| */
 | |
| 
 | |
| Auth::routes();
 | |
| 
 | |
| Route::get('/about/terms', function () {
 | |
| 	return view('terms');
 | |
| });
 | |
| 
 | |
| Route::get('/about/privacy', function () {
 | |
| 	return view('privacy');
 | |
| });
 | |
| 
 | |
| 
 | |
| Route::get('/', function () {
 | |
| 	if (!Auth::guest()) {
 | |
| 		return redirect('/home');
 | |
| 	}
 | |
|     return view('welcome');
 | |
| });
 | |
| 
 | |
| Route::get('/home', 'HomeController@index')->name('home');
 | |
| 
 | |
| // ----------------- SOCIAL LOGIN --------------------
 | |
| 
 | |
| function _loginVia($method) {
 | |
|     try {
 | |
|         SocialAuth::login($method, function (\App\Models\User $user, ProviderUser $details) {
 | |
|             // update user name first time user logs in
 | |
|             if (!$user->exists) {
 | |
|                 $user->name = $details->nickname ?: ($details->full_name ?: $details->email);
 | |
|             }
 | |
| 
 | |
|             // set e-mail from provider data, only if user e-mail is empty
 | |
|             if ("$user->email" === "") {
 | |
|                 $user->email = $details->email;
 | |
|             }
 | |
|         });
 | |
|     } 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');
 | |
| */
 | |
| 
 |