31 lines
786 B
PHP
31 lines
786 B
PHP
<?php
|
|
|
|
use Illuminate\Support\Facades\Route;
|
|
use Laravel\Socialite\Socialite;
|
|
use App\Models\User;
|
|
|
|
Route::get('/', function () {
|
|
return view('welcome');
|
|
});
|
|
|
|
Route::prefix('auth')->group(function () {
|
|
Route::get('login', function () {
|
|
return Socialite::driver('authentik')->redirect();
|
|
});
|
|
|
|
Route::get('/redirect', function () {
|
|
$user = Socialite::driver('authentik')->user();
|
|
$new_user = User::updateOrCreate([
|
|
'id' => $user->id,
|
|
], [
|
|
'id' => $user->id,
|
|
'name' => $user->nickname,
|
|
'email' => $user->email,
|
|
'oauth_token' => $user->token,
|
|
]);
|
|
Auth::login($new_user);
|
|
|
|
return redirect('/');
|
|
// $user->token
|
|
});
|
|
}); |