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