and another one
This commit is contained in:
@@ -13,6 +13,8 @@ class AuthAccountService {
|
||||
* @param \Laravel\Socialite\Two\User $user
|
||||
*/
|
||||
public function createOrGetUser(ProviderUser $eve_user) {
|
||||
//Search for user in the database
|
||||
|
||||
|
||||
$account = AuthAccount::whereProvider('eveonline')->whereProviderUserId($eve_user->getId())->first();
|
||||
|
||||
@@ -49,28 +51,9 @@ class AuthAccountService {
|
||||
$account->save();
|
||||
|
||||
return $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
|
||||
if($existing->character_owner_hash !== $eve_user->character_owner_hash) {
|
||||
$existing->owner_has = $eve_user->character_owner_hash;
|
||||
$existing->save();
|
||||
}
|
||||
|
||||
return $existing;
|
||||
|
||||
}
|
||||
|
||||
if(!eve_user)
|
||||
|
||||
return User::forceCreate([
|
||||
'id' => $eve_user->character_id,
|
||||
'name' => $eve_user->name,
|
||||
'owner_hash' => $eve_user->character_owner_hash,
|
||||
'email' => null,
|
||||
]);
|
||||
*/
|
||||
}
|
||||
|
||||
}
|
||||
@@ -4,6 +4,7 @@ namespace App\Http\Controllers\Auth;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Foundation\Auth\AuthenticatesUsers;
|
||||
use Socialite;
|
||||
|
||||
class LoginController extends Controller
|
||||
{
|
||||
@@ -41,4 +42,18 @@ class LoginController extends Controller
|
||||
Auth::logout();
|
||||
return redirect('/');
|
||||
}
|
||||
|
||||
public function redirectToProvider() {
|
||||
return Socialite::driver('eveonline')->setScopes(['publicData'])->redirect();
|
||||
}
|
||||
|
||||
public function handleProviderCallback(AuthAccountService $service) {
|
||||
$ssoUser = Socialite::driver('eveonline')->user();
|
||||
dd($ssoUser);
|
||||
$user = $service->createOrGetUser($ssoUser);
|
||||
|
||||
auth()->login($user);
|
||||
|
||||
return redirect()->to('/dashboard');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,12 +2,18 @@
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
use App\Http\Requests;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\AuthAccountService;
|
||||
use Socialite;
|
||||
use SocialiteUser;
|
||||
use App\User;
|
||||
use App\AuthAccountService;
|
||||
use App\Http\Requests;
|
||||
use App\Http\Controllers\Controller;
|
||||
|
||||
|
||||
|
||||
use DB;
|
||||
|
||||
class AuthController extends Controller
|
||||
{
|
||||
@@ -28,29 +34,15 @@ class AuthController extends Controller
|
||||
* @return Response
|
||||
*/
|
||||
public function handleProviderCallback(AuthAccountService $service) {
|
||||
$ssoUser = Socialite::driver('eveonline')->user();
|
||||
|
||||
$user = $service->createOrGetUser(Socialite::driver('eveonline')->user());
|
||||
$user = $service->createOrGetUser($ssoUser);
|
||||
|
||||
auth()->login($user);
|
||||
|
||||
return redirect()->to('/dashboard');
|
||||
/*
|
||||
$eve_data = Socialite::driver('eveonline')->user();
|
||||
|
||||
//Get or create the User bound to this login
|
||||
$user = $this->createOrGetUser($eve_data);
|
||||
//Auth the user
|
||||
auth()->login($user);
|
||||
|
||||
|
||||
*/
|
||||
dd($user);
|
||||
}
|
||||
/*
|
||||
public function loginUser(User $user): bool {
|
||||
auth()->login($user, true);
|
||||
|
||||
return true;
|
||||
}
|
||||
*/
|
||||
|
||||
}
|
||||
|
||||
@@ -27,8 +27,4 @@ class User extends Authenticatable
|
||||
protected $hidden = [
|
||||
'password', 'remember_token',
|
||||
];
|
||||
|
||||
public function getCharacterId() {
|
||||
return $this->character_id;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,8 +17,8 @@ Route::get('/', function () {
|
||||
|
||||
Auth::routes();
|
||||
|
||||
Route::get('/login', 'AuthController@redirectToProvider');
|
||||
Route::get('/callback', 'AuthController@handleProviderCallback');
|
||||
Route::get('/login', 'LoginController@redirectToProvider');
|
||||
Route::get('/callback', 'LoginController@handleProviderCallback');
|
||||
|
||||
Route::get('/dashboard', 'DashboardController@index');
|
||||
Route::get('/dashboard/addmoon', 'DashboardController@addMoon');
|
||||
|
||||
Reference in New Issue
Block a user