public function getEdit($sid)
 {
     $user = User::find($sid);
     if ($user == null) {
         $errors = new MessageBag();
         $errors->add('editError', Lang::get('redminportal::messages.user_error_user_not_found'));
         return redirect('/admin/users')->withErrors($errors);
     }
     $roles = Group::orderBy('name')->lists('name', 'id');
     $groups = [];
     foreach ($user->groups as $group) {
         $groups[$group->id] = $group->id;
     }
     $permission_inherit = [];
     $permission_allow = [];
     $permission_deny = [];
     foreach ($user->permissions() as $key => $value) {
         if ($value < 0) {
             $permission_deny[$key] = $key;
         } elseif ($value > 0) {
             $permission_allow[$key] = $key;
         } else {
             $permission_inherit[$key] = $key;
         }
     }
     $data = array('roles' => $roles, 'user' => $user, 'groups' => $groups, 'permission_inherit' => implode(',', $permission_inherit), 'permission_allow' => implode(',', $permission_allow), 'permission_deny' => implode(',', $permission_deny));
     return view('redminportal::users/edit', $data);
 }
 public function getEdit($sid)
 {
     $user = User::find($sid);
     if ($user == null) {
         $errors = new \Illuminate\Support\MessageBag();
         $errors->add('editError', "The user cannot be found because it does not exist or may have been deleted.");
         return redirect('/admin/users')->withErrors($errors);
     }
     $roles = Group::orderBy('name')->lists('name', 'id');
     $group = $user->groups()->first();
     if ($group == null) {
         $group = Group::orderBy('name')->first();
     }
     $data = array('roles' => $roles, 'user' => $user, 'group' => $group);
     return view('redminportal::users/edit', $data);
 }
 public function getSort($sortBy = 'email', $orderBy = 'asc')
 {
     $inputs = array('sortBy' => $sortBy, 'orderBy' => $orderBy);
     $rules = array('sortBy' => 'required|regex:/^[a-zA-Z0-9 _-]*$/', 'orderBy' => 'required|regex:/^[a-zA-Z0-9 _-]*$/');
     $validation = \Validator::make($inputs, $rules);
     if ($validation->fails()) {
         return redirect('admin/groups')->withErrors($validation);
     }
     if ($orderBy != 'asc' && $orderBy != 'desc') {
         $orderBy = 'asc';
     }
     $groups = Group::orderBy($sortBy, $orderBy)->paginate(20);
     return view('redminportal::groups/view')->with('sortBy', $sortBy)->with('orderBy', $orderBy)->with('groups', $groups);
 }
 public function getIndex()
 {
     $models = Group::orderBy($this->sortBy, $this->orderBy)->paginate($this->perpage);
     $data = ['models' => $models, 'sortBy' => $this->sortBy, 'orderBy' => $this->orderBy];
     return view('redminportal::groups/view', $data);
 }