This commit is contained in:
2026-03-07 18:20:23 -06:00
parent 29abc8f28d
commit 09ba489a4d

View File

@@ -34,20 +34,27 @@ class EveLoginController extends Controller
// Stateless can help in some deployments, but keep stateful by default.
// If you run into "Invalid state" issues behind proxies, switch to ->stateless()
$ssoUser = Socialite::driver('eveonline')->user();
Debugbar::info($ssoUser);
// Socialite user basics
$characterId = (int) $ssoUser->getId();
Debugbar::info($characterId);
$characterName = $ssoUser->getName() ?: ($ssoUser->getNickname() ?? 'Unknown');
Debugbar::info($characterName);
// Provider-specific extra payload sometimes appears in user array / token response.
// Well defensively extract what we can.
$raw = $ssoUser->user ?? [];
$characterOwnerHash =
$raw['CharacterOwnerHash'] ?? $raw['character_owner_hash'] ?? $raw['owner_hash'] ?? '';
Debugbar::info($characterOwnerHash);
$token = $ssoUser->token;
Debugbar::info($token);
$refreshToken = $ssoUser->refreshToken ?? null;
Debugbar::info($refreshTokeen);
$expiresIn = $ssoUser->expiresIn ?? null;
Debugbar::info($expiresIn);
$user = User::updateOrCreate(
['character_id' => $characterId],
@@ -61,6 +68,7 @@ class EveLoginController extends Controller
'user_jwt' => null,
]
);
Debugbar::info($user);
//Issue JWT and store in the "user" column per your spec
$jwt = $jwtService->make($user);
@@ -74,7 +82,8 @@ class EveLoginController extends Controller
} catch (Throwable $e) {
// For now: fail back to login with a generic error.
// Later you can add logging/telemetry.
return redirect()->route('login')->with('error', $e);
Debugbar::addThrowable($e);
return redirect()->route('login')->with('error', 'SSO Login Failed.');
}
}
}