This commit is contained in:
Čarodej
2022-01-10 08:31:44 +01:00
parent 8a64fe070b
commit ead4f65e1a
23 changed files with 413 additions and 1176 deletions
@@ -1,5 +1,4 @@
<?php
namespace App\Socialite\Controllers;
use App\Users\Models\User;
@@ -20,32 +19,33 @@ class SocialiteCallbackController extends Controller
public function __invoke($provider)
{
// Get socialite user
if (app()->runningInConsole()) {
if (app()->runningUnitTests()) {
$provider_user = Socialite::driver($provider)->user();
} else {
$provider_user = Socialite::driver($provider)->stateless()->user();
}
// Check if user exist already
$user = User::whereEmail($provider_user->email)->first();
$user = User::where('email', $provider_user->email)->first();
if($user) {
// Login User
// Login User
if ($user) {
$this->guard->login($user);
} else {
$data = CreateUserData::fromArray([
'name' => $provider_user->getname(),
'email' => $provider_user->getEmail(),
'avatar' => store_socialite_avatar($provider_user->getAvatar()),
'oauth_provider' => $provider,
]);
// Create User
($this->createNewUser)($data);
return response('User logged in', 201);
}
return response('Loged in', 200);
// Create data user data object
$data = CreateUserData::fromArray([
'name' => $provider_user->name,
'email' => $provider_user->email,
'avatar' => store_socialite_avatar($provider_user->avatar),
'oauth_provider' => $provider,
]);
// Create User
($this->createNewUser)($data);
return response('User registered', 201);
}
}
@@ -1,5 +1,4 @@
<?php
namespace App\Socialite\Controllers;
use App\Http\Controllers\Controller;
@@ -12,7 +11,7 @@ class SocialiteRedirectController extends Controller
$url = Socialite::driver($provider)->stateless()->redirect()->getTargetUrl();
return response()->json([
'url' => $url
'url' => $url,
]);
}
}