update pengguna
This commit is contained in:
@@ -27,25 +27,106 @@ class PenggunaController extends Controller
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$alluser = User::all();
|
||||
// $alluser = User::all();
|
||||
$alluser = User::with('roles')->get();
|
||||
$allroles = Role::all()->pluck('name');
|
||||
// $user = Auth::user();
|
||||
// $user->assignRole('admin');
|
||||
return view('pengurusanpengguna.index',compact('alluser'));
|
||||
return view('pengurusanpengguna.index',compact('alluser','allroles'));
|
||||
}
|
||||
|
||||
public function taraf()
|
||||
public function show(Request $request, $userid)
|
||||
{
|
||||
$alluser = User::all();
|
||||
// $user = Auth::user();
|
||||
// $user->assignRole('admin');
|
||||
return view('pengurusanpengguna.taraf',compact('alluser'));
|
||||
// dd($userid);
|
||||
$user = User::where('id','=',$userid)->with('roles')->first();
|
||||
$userroles = $user->getRoleNames()->toArray();
|
||||
|
||||
$allroles = Role::all()->pluck('name');
|
||||
|
||||
return view('pengurusanpengguna.show',compact('user','allroles','userroles'));
|
||||
}
|
||||
|
||||
public function roles()
|
||||
public function store(Request $request)
|
||||
{
|
||||
|
||||
$user = User::where('id','=',$request->userid)->first();
|
||||
$allroles = Role::all()->pluck('name');
|
||||
// dd($user);
|
||||
$arraytaraf = [];
|
||||
foreach($allroles as $index=>$taraf) {
|
||||
$req = 'taraf'.$taraf;
|
||||
// dd($req);
|
||||
if($request->$req)
|
||||
{
|
||||
array_push($arraytaraf,$taraf);
|
||||
}
|
||||
}
|
||||
// dd($arraytaraf);
|
||||
$user->syncRoles($arraytaraf);
|
||||
return redirect()->route('pengguna.index')
|
||||
->with('success','Tukar Taraf Berjaya');
|
||||
}
|
||||
|
||||
public function taraf() //taraf = roles in db
|
||||
{
|
||||
$arrayrole = [];
|
||||
$arraypermision = [];
|
||||
$roles = Role::all();
|
||||
$permission = Permission::all();
|
||||
|
||||
return view('pengurusanpengguna.taraf',compact('roles','permission'));
|
||||
}
|
||||
public function showtaraf($tarafid)
|
||||
{
|
||||
// dd($tarafname->permissions);
|
||||
$roles = Role::where('id','=',$tarafid)->first();
|
||||
$selectedroles = $roles->name;
|
||||
$allpermission = Permission::all()->pluck('name');
|
||||
$userpermission = $roles->permissions->pluck('name')->toArray();
|
||||
// dd($roles->permissions->pluck('name'));
|
||||
return view('pengurusanpengguna.showtaraf',compact('selectedroles','allpermission','userpermission'));
|
||||
}
|
||||
|
||||
public function storetaraf(Request $request) //taraf = roles in db
|
||||
{
|
||||
$role = Role::where('name','=',$request->namataraf)->first();
|
||||
$allpermission = Permission::all()->pluck('name');
|
||||
|
||||
$arraypermission = [];
|
||||
foreach($allpermission as $index=>$roles) {
|
||||
$req = 'role'.$roles;
|
||||
// dd($req);
|
||||
if($request->$req)
|
||||
{
|
||||
array_push($arraypermission,$roles);
|
||||
}
|
||||
}
|
||||
// dd($arraypermission);
|
||||
$role->syncPermissions($arraypermission);
|
||||
|
||||
// $user = Auth::user();
|
||||
// $user->assignRole('admin');
|
||||
return redirect()->route('pengguna.taraf')
|
||||
->with('success','Tukar Roles Berjaya');
|
||||
}
|
||||
|
||||
public function roles() //roles = permissions in db
|
||||
{
|
||||
$alluser = User::all();
|
||||
// $user = Auth::user();
|
||||
// $user->assignRole('admin');
|
||||
return view('pengurusanpengguna.roles',compact('alluser'));
|
||||
}
|
||||
|
||||
public function updateroles(Request $request)
|
||||
{
|
||||
$user = User::where('id','=',$request->id);
|
||||
$user->syncPermissions($request->arrayroles);
|
||||
// $user = Auth::user();
|
||||
// $user->assignRole('admin');
|
||||
return redirect()->route('pengguna.roles')
|
||||
->with('success','Tukar Roles Berjaya');
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -3,7 +3,8 @@
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
{{-- {{$alluser}} --}}
|
||||
{{-- <div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Dashboard') }}</div>
|
||||
|
||||
@@ -13,12 +14,55 @@
|
||||
{{ session('status') }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
you can manage users!
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div> --}}
|
||||
<div class="col-md-12">
|
||||
@if ($message = Session::get('success'))
|
||||
<div class="alert alert-success">
|
||||
<p>{{ $message }}</p>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<table class="table table-bordered">
|
||||
<tr>
|
||||
<th>No</th>
|
||||
<th>Nama</th>
|
||||
<th>Emails</th>
|
||||
<th>Taraf</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
@foreach ($alluser as $user)
|
||||
<tr>
|
||||
<td>{{ $loop->iteration }}</td>
|
||||
<td>{{ $user->name }}</td>
|
||||
<td>{{ $user->email }}</td>
|
||||
<td>
|
||||
@foreach ($user->roles as $taraf)
|
||||
<p>{{$taraf->name}}</p>
|
||||
@endforeach
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-info" href="{{ route('pengguna.show',$user->id) }}">Edit</a>
|
||||
{{-- <form action="{{ route('pengguna.updatepengguna',$user->id) }}" method="POST">
|
||||
|
||||
<a class="btn btn-info" href="{{ route('users.show',$user->id) }}">Show</a>
|
||||
|
||||
<a class="btn btn-primary" href="{{ route('users.edit',$user->id) }}">Edit</a>
|
||||
|
||||
@csrf
|
||||
@method('DELETE')
|
||||
|
||||
<button type="submit" class="btn btn-danger">Delete</button> --}}
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@endsection
|
||||
|
||||
@@ -19,6 +19,9 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@endsection
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
@if ($message = Session::get('success'))
|
||||
<div class="alert alert-success">
|
||||
<p>{{ $message }}</p>
|
||||
</div>
|
||||
@endif
|
||||
<form action="{{ route('pengguna.store') }}" method="POST">
|
||||
@csrf
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-6">
|
||||
<label for="inputEmail4">Nama</label>
|
||||
<input type="text" value="{{$user->name}}" class="form-control" name="nama" id="inputText" readonly>
|
||||
</div>
|
||||
<div class="form-group col-md-6">
|
||||
<label for="inputPassword4">E-mel</label>
|
||||
<input type="email" value="{{$user->email}}" class="form-control" name="emel" id="inputEmail4" readonly>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<h4 class="col-md-3">Taraf Pengguna</h4>
|
||||
<div class="form-group col-md-9">
|
||||
@foreach ($allroles as $namataraf)
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" name="taraf{{$namataraf}}" type="checkbox" id="taraf{{$namataraf}}" value="{{$namataraf}}" @if (in_array($namataraf,$userroles)) checked @endif>
|
||||
{{-- <input type="hidden" id="alltaraf" value=""> --}}
|
||||
<label class="form-check-label" for="taraf{{$namataraf}}">{{$namataraf}}</label>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
<div class="text-right pt-4">
|
||||
<input type="hidden" name="userid" value="{{$user->id}}">
|
||||
<button type="submit" class="btn btn-primary">Simpan</button>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@endsection
|
||||
@@ -0,0 +1,42 @@
|
||||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
@if ($message = Session::get('success'))
|
||||
<div class="alert alert-success">
|
||||
<p>{{ $message }}</p>
|
||||
</div>
|
||||
@endif
|
||||
<form action="{{ route('pengguna.storetaraf') }}" method="POST">
|
||||
@csrf
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-6">
|
||||
<label for="inputEmail4">Nama Taraf</label>
|
||||
<input type="text" value="{{$selectedroles}}" class="form-control" name="nama" id="inputText" readonly>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-row">
|
||||
<h4 class="col-md-2">Roles</h4>
|
||||
<div class="form-group col-md-10">
|
||||
@foreach ($allpermission as $roles)
|
||||
<div class="form-check form-check-inline">
|
||||
<input class="form-check-input" name="role{{$roles}}" type="checkbox" id="role{{$roles}}" value="{{$roles}}" @if (in_array($roles,$userpermission)) checked @endif>
|
||||
{{-- <input type="hidden" id="alltaraf" value=""> --}}
|
||||
<label class="form-check-label" for="role{{$roles}}">{{$roles}}</label>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
<div class="text-right pt-4">
|
||||
<input type="hidden" name="namataraf" value="{{$selectedroles}}">
|
||||
<button type="submit" class="btn btn-primary">Simpan</button>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@endsection
|
||||
@@ -3,21 +3,37 @@
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Dashboard') }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
@if (session('status'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('status') }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
you can manage taraf!
|
||||
|
||||
<div class="col-md-12">
|
||||
@if ($message = Session::get('success'))
|
||||
<div class="alert alert-success">
|
||||
<p>{{ $message }}</p>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<table class="table table-bordered">
|
||||
<tr>
|
||||
<th>No</th>
|
||||
<th>Taraf</th>
|
||||
<th>Roles</th>
|
||||
<th>Action</th>
|
||||
</tr>
|
||||
@foreach ($roles as $role)
|
||||
<tr>
|
||||
<td>{{ $loop->iteration }}</td>
|
||||
<td>{{ $role->name }}</td>
|
||||
{{-- <td>{{ $role->email }}</td> --}}
|
||||
<td>
|
||||
@foreach ($role->permissions->pluck('name') as $taraf)
|
||||
<p>{{$taraf}}</p>
|
||||
@endforeach
|
||||
</td>
|
||||
<td>
|
||||
<a class="btn btn-info" href="{{ route('pengguna.showtaraf',$role->id) }}">Edit</a>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
+8
-4
@@ -19,14 +19,18 @@ Route::get('/', function () {
|
||||
|
||||
Auth::routes();
|
||||
|
||||
Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');
|
||||
Route::get('/about', [App\Http\Controllers\HomeController::class, 'about'])->name('about');
|
||||
Route::get('/home','HomeController@index')->name('home');
|
||||
Route::get('/about','HomeController@about')->name('about');
|
||||
|
||||
//Pengurusan Pengguna
|
||||
|
||||
|
||||
Route::group(['middleware' => ['permission:pengguna'],'prefix'=>'pengguna'], function () {
|
||||
Route::get('/index','PenggunaController@index');
|
||||
Route::get('/taraf','PenggunaController@taraf');
|
||||
Route::get('/index',['as'=>'pengguna.index','uses'=>'PenggunaController@index']);
|
||||
Route::get('/taraf',['as'=>'pengguna.taraf','uses'=>'PenggunaController@taraf']);
|
||||
Route::get('/taraf/{tarafid}',['as'=>'pengguna.showtaraf','uses'=>'PenggunaController@showtaraf']);
|
||||
Route::post('/storetaraf',['as'=>'pengguna.storetaraf','uses'=>'PenggunaController@storetaraf']);
|
||||
Route::get('/roles','PenggunaController@roles');
|
||||
Route::get('/show/{userid}',['as'=>'pengguna.show','uses'=>'PenggunaController@show']);
|
||||
Route::post('/store',['as'=>'pengguna.store','uses'=>'PenggunaController@store']);
|
||||
});
|
||||
Reference in New Issue
Block a user