diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php index fb9f13a85..60e90cfa1 100644 --- a/app/Http/Controllers/Auth/LoginController.php +++ b/app/Http/Controllers/Auth/LoginController.php @@ -99,7 +99,9 @@ class LoginController extends Controller $this->SetScopes($ssoUser->user['Scopes'], $ssoUser->id); return redirect()->to('/dashboard')->with('success', 'Successfully updated ESI Scopes.'); - } + } else { + $this->createAlt($ssoUser); + } } else { $user = $this->createOrGetUser($ssoUser); @@ -115,7 +117,7 @@ class LoginController extends Controller * * @param \Laravel\Socialite\Two\User $user */ - private function createOrGetAlt($user) { + private function createAlt($user) { $altCount = UserAlt::where('character_id', $user->id)->count(); if($altcount == 0) { $newAlt = new UserAlt; diff --git a/app/Http/Controllers/Dashboard/DashboardController.php b/app/Http/Controllers/Dashboard/DashboardController.php index 111986093..d43edebd7 100644 --- a/app/Http/Controllers/Dashboard/DashboardController.php +++ b/app/Http/Controllers/Dashboard/DashboardController.php @@ -118,16 +118,53 @@ class DashboardController extends Controller * @return \Illuminate\Http\Response */ public function profile() { - $scopes = EsiScope::where('character_id', Auth()->user()->character_id)->get(); - $permissions = UserPermission::where('character_id', Auth()->user()->characer_id)->get(); - $roles = UserRole::where('character_id', Auth()->user()->character_id)->get(); - - $data = [ - 'scopes' => $scopes, - 'permissions' => $permissions, - 'roles' => $roles, - ]; + //Declare some variables + $alts = null; + $scopes = null; + $permissions = null; + $roles = null; - return view('dashboard.profile')->with('data', $data); + //Get the Esi scopes, user permission set, and roles + $scopeCount = EsiScope::where('character_id', auth()->user()->character_id)->count(); + if($scopeCount > 0) { + $scopes = EsiScope::where('character_id', Auth()->user()->character_id)->get(); + } + + $permissionCount = UserPermission::where('character_id', auth()->user()->character_id)->count(); + if($permissionCount > 0) { + $permissions = UserPermission::where('character_id', Auth()->user()->characer_id)->get(); + } + + $roleCount = UserRole::where('character_id', auth()->user()->character_id)->count(); + if($roleCount > 0) { + $roles = UserRole::where('character_id', Auth()->user()->character_id)->get(); + } + + $altCount = UserAlt::where('main_id', auth()->user()->character_id)->count(); + if($altCount > 0) { + $alts = UserAlt::where(['main_id' => auth()->user()->character_id])->get(); + } + + return view('dashboard.profile')->with('scopeCount', $scopeCount) + ->with('scopes', $scopes) + ->with('permissionCount', $permissionCount) + ->with('permissions', $permissions) + ->with('roleCount', $roleCount) + ->with('roles', $roles) + ->with('altCount', $altCount) + ->with('alts', $alts); + } + + public function removeAlt(Request $request) { + $this->validate($request, [ + 'character' => 'required', + ]); + + UserAlt::where([ + 'main_id' => auth()->user()->character_id, + 'character_id' => $request->character, + ])->delete(); + + return redirect('/dashboard'); } } diff --git a/resources/views/dashboard/profile.blade.php b/resources/views/dashboard/profile.blade.php index 6e16cbf17..c375ec845 100644 --- a/resources/views/dashboard/profile.blade.php +++ b/resources/views/dashboard/profile.blade.php @@ -1,6 +1,122 @@ @extends('layouts.b4') @section('content')
-

Services Profile


+
+
+
+
+

Scopes

+
+
+ + + + + + @if($scopeCount > 0) + @foreach($scopes as $scope) + + + + @endforeach + @else + + + + @endif + +
Scope
{{ $scope->scope }}
No Scopes
+
+
+
+
+
+
+

Permissions

+
+
+ + + + + + @if($permissionCount > 0) + @foreach($permissions as $permission) + + + + @endforeach + @else + + + + @endif + +
Permission
{{ $permission->permission }}
No Permissions
+
+
+
+
+
+
+

Roles

+
+
+ + + + + + @if($roleCount > 0) + @foreach($roles as $role) + + + + @endforeach + @else + + + + @endif + +
Role
{{ $role->role }}
No Role
+
+
+
+
+
+
+ Register Alt +
+
+
+ + + + + + + + @if($altcount > 0) + @foreach($alts as $alt) + {{ Form::open(['action' => 'Dashboard\DashboardController@removeAlt', 'method' => 'POST']) }} + + + + + + {{ Form::close() }} + @endforeach + @else + + + + + @endif + +
Alt NameCharacter IdRemove
{{ $alt->name }}{{ $alt->character_id }} + {{ Form::hidden('character', $alt->character_id) }} + {{ Form::submit('Submit', ['class' => 'btn btn-primary']) }} +
No Alts on Record
@endsection \ No newline at end of file diff --git a/routes/web.php b/routes/web.php index 702413678..08d304866 100644 --- a/routes/web.php +++ b/routes/web.php @@ -24,6 +24,7 @@ Route::group(['middleware' => ['auth']], function(){ * Dashboard Controller Display pages */ Route::get('/dashboard', 'Dashboard\DashboardController@index'); + Route::post('/dashboard/alt/delete', 'Dashboard\DashboardController@removeAlt'); /** * AJAX Test pages