Exemple #1
0
 /**
  * Update the specified resource in storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function update($id)
 {
     // validate
     $rules = array('name' => 'required|max:50');
     $validator = Validator::make(Input::all(), $rules);
     // process the update
     if ($validator->fails()) {
         return Redirect::back()->withErrors($validator)->withInput();
     } else {
         // update
         $update = Roles::find($id);
         $update->rl_name = Input::get('name');
         $update->rl_description = Input::get('description');
         $update->rl_enabled = Input::get('enabled');
         $update->updated_by = \Auth::user()->id;
         $update->save();
         $usr_role = \Auth::user()->usr_role;
         $MdlsCnt = Modules::where('mdl_enabled', 1)->join('permissions', 'permissions.id_mdl', '=', 'modules.id')->where('pm_access', 1)->where('mdl_isadmin', 0)->where('id_rl', $usr_role)->get(['modules.id as id']);
         $PreviousPermsDelete = Permissions::where('id_rl', $update->id)->delete();
         foreach ($MdlsCnt as $Mdl) {
             $permission = new Permissions();
             $permission->id_rl = $update->id;
             $permission->id_mdl = $Mdl->id;
             $permission->pm_access = Input::has('access_' . $Mdl->id) ? '1' : '0';
             if (Input::has('access_' . $Mdl->id)) {
                 $permission->pm_create = Input::has('create_' . $Mdl->id) ? '1' : '0';
                 $permission->pm_read = Input::has('read_' . $Mdl->id) ? '1' : '0';
                 $permission->pm_update = Input::has('update_' . $Mdl->id) ? '1' : '0';
                 $permission->pm_destroy = Input::has('destroy_' . $Mdl->id) ? '1' : '0';
             }
             $permission->save();
         }
         // redirect
         Session::flash('message', 'Rol Actualizado Con Exito.');
         return Redirect::to('roles');
     }
 }
 public function getEdit($id)
 {
     $data['user'] = User::find($id);
     $data['role'] = Permissions::where('id_user', $id)->first();
     return view('app.administrator.edit', $data);
 }