/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $roles = Role::all(); $permissions = Permission::all(); foreach ($permissions as $permission) { foreach ($roles as $role) { $next = $role->id . '-' . $permission->id; if (Input::get($next)) { $role->assignPermission($permission); } else { $role->revokePermission($permission); } } } return Redirect::to('/admin/access'); }
/** * Run the database seeds. * * @return void */ public function run() { $role = new Role(); $roleAdmin = $role->create(['name' => 'Admin', 'slug' => 'admin', 'description' => 'Manage Administration privileges']); $roleAdmin->assignPermission(Permission::all()); $rolebpLead = $role->create(['name' => 'BPLead', 'slug' => 'bplead', 'description' => 'Manage Business Plan privileges']); $rolebpLead->assignPermission('mywork'); $roledepLead = $role->create(['name' => 'DepLead', 'slug' => 'deplead', 'description' => 'Manage Department Lead privileges']); $roledepLead->assignPermission('objective'); $roledepLead->assignPermission('mywork'); $roleteamLead = $role->create(['name' => 'TeamLead', 'slug' => 'teamlead', 'description' => 'Manage Team Lead privileges']); $roleteamLead->assignPermission('action'); $roleteamLead->assignPermission('mywork'); $rolebasicUser = $role->create(['name' => 'BasicUser', 'slug' => 'basicuser', 'description' => 'Manage Basic User privileges']); $rolebasicUser->assignPermission('mywork'); $rolebasicUser->assignPermission('action'); }
/** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function postUserPermissions(Request $request, $id) { $user = User::find($id); $permissions = Permission::all(); foreach ($permissions as $permission) { if (Input::get($permission->name)) { $user->addPermission($permission->name); } else { $user->removePermission($permission->name); } } $user->save(); return Redirect::to('/admin/user'); }
/** * Update the specified resource in storage. * * @param Request $request * @param int $id * @return Response */ public function update(Request $request, $id) { // $this->validate($request, ['name' => 'required']); $permission = Permission::findOrFail($id); $permission->update(['name' => $request->name, 'slug' => ['create' => $request->slug['create'] != 'false' ? true : false, 'view' => $request->slug['view'] != 'false' ? true : false, 'update' => $request->slug['update'] != 'false' ? true : false, 'delete' => $request->slug['delete'] != 'false' ? true : false, 'special' => $request->slug['special'] != 'false' ? true : false], 'description' => $request->description]); //always sync permissions to the super_admin role $role = Role::find(1); $role->syncPermissions(Permission::all()); flash()->success('Success', 'The permission has been updated successfully'); return redirect('/admin/permissions'); }
/** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { $permissions = Permission::all(); return View::make('badmin::permission.index', ['permissions' => $permissions]); }