update pengguna

This commit is contained in:
Azfar Arsyad
2021-11-18 16:45:30 +08:00
parent bdc14ce8c1
commit ad618d8753
7 changed files with 266 additions and 30 deletions
+89 -8
View File
@@ -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');
}
}