modify user role

This commit is contained in:
2020-06-27 12:16:30 -05:00
parent fbbd4409d0
commit 400b777484
3 changed files with 36 additions and 21 deletions

View File

@@ -18,6 +18,7 @@ use App\Models\User\User;
use App\Models\User\UserRole;
use App\Models\User\UserPermission;
use App\Models\User\AvailableUserPermission;
use App\Models\User\AvailableUserRole;
use App\Models\Admin\AllowedLogin;
use App\Models\Doku\DokuGroupNames;
use App\Models\Doku\DokuMember;
@@ -220,37 +221,41 @@ class AdminController extends Controller
$permissions[$p->permission] = $p->permission;
}
$roles = AvailableUserRole::all();
$role = $user->getRole();
//Pass the user information to the page for hidden text entries
return view('admin.user.modify')->with('user', $user)
->with('permissions', $permissions);
->with('permissions', $permissions)
-with('role', $role)
->with('roles', $roles);
}
public function modifyUser(Request $request) {
$type = $request->type;
if(isset($request->permission)) {
$permission = $request->permission;
}
if(isset($request->user)) {
$user = $request->user;
}
public function modifyRole(Request $request) {
$this->validate($request, [
'user' => 'required',
'role' => 'required|role!=None',
]);
return redirect('/admin/dashboard/users')->with('error', 'Not Implemented Yet.');
UserRole::where(['character_id' => $user])->update([
'role' => $request->role,
]);
return redirect('/admin/dashboard/users')->with('success', "User: " . $user . " has been modified to a new role: " . $request->role . ".");
}
public function addPermission(Request $request) {
//Get the user and permission from the form
$user = $request->user;
$character = $request->user;
$permission = $request->permission;
//Get the character id from the username using the user table
$character = User::where(['name' => $user])->get(['character_id']);
//Check to see if the character already has the permission
$check = UserPermission::where(['character_id' => $character[0]->character_id, 'permission' => $permission])->get(['permission']);
$check = UserPermission::where(['character_id' => $character, 'permission' => $permission])->get(['permission']);
if(!isset($check[0]->permission)) {
$perm = new UserPermission;
$perm->character_id = $character[0]->character_id;
$perm->character_id = $character;
$perm->permission = $permission;
$perm->save();

View File

@@ -21,14 +21,13 @@
<div class="card-body">
{{ Form::open(['action' => 'Dashboard\AdminController@addPermission', 'method' => 'POST']) }}
<div class="form-group">
{{ Form::hidden('user', $user->name) }}
{{ Form::hidden('user', $user->character_id) }}
{{ Form::select('permission', $permissions, 'None', ['class' => 'form-control']) }}
{{ Form::hidden('type', 'addPermission') }}
</div>
<div class="form-group col-md-2">
{{ Form::submit('Add Permission', ['class' => 'btn btn-primary']) }}
{!! Form::close() !!}
</div>
{!! Form::close() !!}
</div>
</div>
</div>
@@ -38,7 +37,19 @@
<h2>Modify Role</h2>
</div>
<div class="card-body">
<div class="container">
<h2>Current Role: {{ $role }}</h2>
</div>
{{ Form::open(['action' => 'Dashboard\AdminConotroller@modifyRole', 'method' => 'POST']) }}
<div class="form-group">
{{ Form::hidden('user', $user->character_id) }}
{{ Form::select('role', $roles, 'None', ['class' => 'form-control']) }}
{{ Form::hidden('type', 'modifyRole') }}
</div>
<div class="form-group col-md-2">
{{ Form::submit('Modify Role', ['class' => 'btn btn-primary']) }}
</div>
{!! Form::close() !!}
</div>
</div>
</div>

View File

@@ -39,7 +39,6 @@ Route::group(['middleware' => ['auth']], function(){
Route::post('/admin/add/permission', 'Dashboard\AdminController@addPermission');
Route::post('/admin/remove/user', 'Dashboard\AdminController@removeUser');
Route::post('/admin/modify/user/display', 'Dashboard\AdminController@displayModifyUser');
Route::post('/admin/modify/user', 'Dashboard\AdminController@modifyUser');
Route::post('/admin/add/allowedlogin', 'Dashboard\AdminController@addAllowedLogin');
Route::post('/admin/rmoeve/allowedlogin', 'Dashboard\AdminController@removeAllowedLogin');
Route::get('/admin/dashboard/journal', 'Dashboard\AdminController@showJournalEntries');