attempt ?
This commit is contained in:
6
.env
6
.env
@@ -9,9 +9,9 @@ LOG_CHANNEL=stack
|
||||
DB_CONNECTION=mysql
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DATABASE=w4rpservices
|
||||
DB_USERNAME=w4rpservices
|
||||
DB_PASSWORD=strtmage84
|
||||
DB_DATABASE=w4rpservices2
|
||||
DB_USERNAME=minerva
|
||||
DB_PASSWORD=strtmage
|
||||
|
||||
BROADCAST_DRIVER=log
|
||||
CACHE_DRIVER=file
|
||||
|
||||
@@ -4,7 +4,7 @@ namespace App;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class SSOAccount extends Model
|
||||
class AuthAccount extends Model
|
||||
{
|
||||
protected $fillable = [
|
||||
'name', 'email', 'avatar', 'owner_hash', 'id', 'expiresIn', 'token', 'refreshToken',
|
||||
@@ -4,10 +4,10 @@ namespace App\Http\Controllers;
|
||||
|
||||
use Socialite;
|
||||
use SocialiteUser;
|
||||
use Laravel\Socialite\Contracts\User as ProviderUser;
|
||||
use App\User;
|
||||
//use Laravel\Socialite\Contracts\Factory as Socialite;
|
||||
//use Laravel\Socialite\Two\User as SocialiteUser;
|
||||
//use Illuminate\Foundation\Auth\AuthenticatesUsers;
|
||||
use App\Http\Requests;
|
||||
use App\Http\Controllers\Controller;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
@@ -29,8 +29,10 @@ class AuthController extends Controller
|
||||
*/
|
||||
public function handleProviderCallback() {
|
||||
$eve_data = Socialite::driver('eveonline')->user();
|
||||
|
||||
|
||||
//Get or create the User bound to this login
|
||||
$user = $this->findOrCreateUser($eve_data);
|
||||
$user = $this->createOrGetUser($eve_data);
|
||||
//Auth the user
|
||||
auth()->login($user);
|
||||
|
||||
@@ -45,7 +47,7 @@ class AuthController extends Controller
|
||||
*
|
||||
* @param \Laravel\Socialite\Two\User $user
|
||||
*/
|
||||
private function findOrCreateUser(SociateUser $eve_user): User {
|
||||
private function createOrGetUser(Provider $eve_user) {
|
||||
//check if the user already exists in the database
|
||||
if($existing = User::find($eve_user->character_id)) {
|
||||
//Check the owner hash and update if necessary
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App;
|
||||
|
||||
use Laravel\Socialite\Contracts\User as ProviderUser;
|
||||
|
||||
class SSOAccountService {
|
||||
|
||||
public function createOrGetUser(ProviderUser $providerUser) {
|
||||
$account = SocialAccount::whereProvider('eveonline')->whereProviderUserId($providerUser->getId())->first();
|
||||
|
||||
if($account) {
|
||||
return $account->user;
|
||||
} else {
|
||||
$account = new SSOAccount([
|
||||
'provider_user_id' => $providerUser->getId(),
|
||||
'provider' => 'eveonline',
|
||||
]);
|
||||
|
||||
$user = User::whereEmail($providerUser->getCharacterId())->first();
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -16,7 +16,7 @@ class User extends Authenticatable
|
||||
* @var array
|
||||
*/
|
||||
protected $fillable = [
|
||||
'name', 'email', 'owner_hash', 'character_id',
|
||||
'name', 'email', 'avatar', 'owner_hash', 'id', 'expiresIn', 'token', 'refreshToken',
|
||||
];
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user