middleware('auth'); } /** * Show the application dashboard. * * @return \Illuminate\Contracts\Support\Renderable */ public function index() { // $alluser = User::all(); $alluser = User::with('roles')->get(); $allroles = Role::all()->pluck('name'); $caw = Cawangan::all(); $user = User::with('roles')->first(); $userroles = $user->getRoleNames()->toArray(); // $user = Auth::user(); // $user->assignRole('admin'); return view('pengurusanpengguna.index',compact('alluser','allroles','caw','user','userroles')); } public function show(Request $request, $userid) { // dd($userid); $user = User::where('id','=',$userid)->with('roles')->first(); $userroles = $user->getRoleNames()->toArray(); $allroles = Role::all()->pluck('name'); // $active = User::where('id','=',$userid)->update('status', 1); return view('pengurusanpengguna.show',compact('user','allroles','userroles')); } public function storepengguna(Request $request) { $currentdate = Carbon::now(); $currentdate = $currentdate->toDateTimeString(); //dd($request->all()); $validator = Validator::make($request->all(), [ 'email' => 'required|string|unique:users|email', 'username' => 'required|string|unique:users' ]); if ($validator->fails()) { $errors = [ 'success' => "error", 'message' => $validator->errors() ]; return redirect()->route('pengguna.index') ->with('message', 'Sila Masukkan Email Yang Sah'); } $user = new User; $user->name = $request->name; $user->username = $request->username; $user->kodcaw = $request->caw; $user->status = 'active'; $user->t_daftar = $currentdate; $user->email = $request->email; $user->email_verified_at = $currentdate; $user->password = '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi'; //password $user->user_type = 1; // $user->user_type = 1; $user->save(); return redirect()->route('pengguna.index') ->with('success', 'Pengguna Berjaya Disimpan'); } public function store(Request $request) { // dd($request->all()); $currentdate = Carbon::now(); $currentdate = $currentdate->toDateTimeString(); $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); if($request->status == true) { $status = 'active'; } else if($request->statusban == true) { $status = 'banned'; } // else if(!($request->has('status'))){ // $status = 'active'; // } else { $status = 'inactive'; } $user = User::where('id','=',$request->userid)->first(); // dd($user); $user->email = $request->emel; $user->notelbimbit = $request->notelbimbit; $user->nokp = $request->nokp; $user->updated_at = $currentdate; $user->status = $status; $user->save(); return redirect()->route('pengguna.index') ->with('success','Kemaskini Berjaya'); } public function delete($userid) { $user = User::where('id','=',$userid)->first(); $allrolesuser = $user->getRoleNames(); foreach($allrolesuser as $index=>$role) { $user->removeRole($role); } $user->delete(); return redirect()->route('pengguna.index') ->with('success','Padam Pengguna 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','Kemaskini Berjaya'); } public function deletetaraf($tarafid) { $taraf = Role::where('id','=',$tarafid)->first(); $taraf->delete(); return redirect()->route('pengguna.taraf') ->with('success','Padam Taraf Berjaya'); } public function roles() //roles = permissions in db { $allpermission = Permission::all(); // $user = Auth::user(); // $user->assignRole('admin'); return view('pengurusanpengguna.roles',compact('allpermission')); } public function newrole(Request $request) { // dd($request->all()); Permission::create([ 'name' => $request->name, 'description' => $request->keterangan ]); return redirect()->route('pengguna.roles') ->with('success','Role berjaya disimpan'); } public function showrole($roleid) //roles = permissions in db { $permission = Permission::where('id','=',$roleid)->first(); // $user = Auth::user(); // $user->assignRole('admin'); return view('pengurusanpengguna.showrole',compact('permission')); } public function storerole(Request $request) { $role = Permission::where('id','=',$request->idrole)->first(); return redirect()->route('pengguna.roles') ->with('success','Kemaskini Berjaya'); } 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'); } public function deleterole($roleid) { $role = Permission::where('id','=',$roleid)->first(); $role->delete(); return redirect()->route('pengguna.roles') ->with('success','Padam Roles Berjaya'); } public function export(Request $request) { if($request->type =='Role' || $request->type =='Permission') { $model_name = '\\Spatie\\Permission\\Models\\'.$request->type; } else { $model_name = '\\App\\Models\\'.$request->type; } // dd($request->checkboxdata); if($request->checkboxdata) { if($request->type == 'User') { $data = $model_name::whereIn('id',$request->checkboxdata)->with('roles')->get(); } else{ $data = $model_name::whereIn('id',$request->checkboxdata)->get(); } } else { if($request->type == 'User') { $data = $model_name::with('roles')->get(); } else{ $data = $model_name::all(); } } // return view('pdf.edit',compact('data')); //page for editing // dd($data); if($request->type =='Role') { $pdf = PDF::loadView('pdf.tarafpdf',compact('data')); return $pdf->download('Taraf.pdf'); } elseif($request->type =='User') { // return view('pdf.edit',compact('data')); //page for editing $pdf = PDF::loadView('pdf.penggunapdf',compact('data')); return $pdf->download('Pengguna.pdf'); } elseif($request->type =='Permission') { return view('pdf.edit',compact('data')); //page for editing // $pdf = PDF::loadView('pdf.rolespdf',compact('data')); // return $pdf->download('Roles.pdf'); } } }