public function get_edit($group_id) { if (!ctype_digit($group_id)) { $this->data['message'] = __('permissions::lang.Invalid group id provided')->get(ADM_LANG); $this->data['message_type'] = 'error'; return Redirect::to(ADM_URI . '/permissions/')->with($this->data); } $group = Groups\Model\Group::find($group_id); if (!isset($group) or empty($group)) { $this->data['message'] = __('permissions::lang.Sorry can\'t find group to edit it\'s permissions')->get(ADM_LANG); $this->data['message_type'] = 'error'; return Redirect::to(ADM_URI . '/permissions/')->with($this->data); } if (isset($group) and $group->slug == 'admin') { $this->data['message'] = __('permissions::lang.The Administration group has access to everything, and cannot be edited')->get(ADM_LANG); $this->data['message_type'] = 'error'; return Redirect::to(ADM_URI . '/permissions/')->with($this->data); } $this->data['section_bar'] = array(__('permissions::lang.Permissions')->get(ADM_LANG) => URL::base() . '/' . ADM_URI . '/permissions', __('permissions::lang.Edit Group Permissions')->get(ADM_LANG) => URL::base() . '/' . ADM_URI . '/permissions/' . $group->id . '/edit'); $this->data['section_bar_active'] = __('permissions::lang.Edit Group Permissions')->get(ADM_LANG); $this->data['group_name'] = $group->name; $this->data['group_id'] = $group->id; $this->data['permission_groups'] = Permission::build_permission_groups($group->id); return $this->theme->render('permissions::backend.edit', $this->data); }
public function delete_destroy($group_id) { if (!ctype_digit($group_id)) { $this->data['message'] = __('groups::lang.Invalid id')->get(ADM_LANG); $this->data['message_type'] = 'error'; return Redirect::back()->with($this->data); } if (Bundle::exists('permissions')) { $group = Groups\Model\Group::with('permissions')->find($group_id); } else { $group = Groups\Model\Group::find($group_id); } if (!isset($group) or empty($group)) { $this->data['message'] = __('groups::lang.Sorry cannot find group to delete')->get(ADM_LANG); $this->data['message_type'] = 'error'; return Redirect::back()->with($this->data); } $users_group = Groups\Model\Group::where('slug', '=', 'users')->first(); // if there is users on this group // set all users back to users group if (isset($users_group) and isset($users_group->id)) { $update = Users\Model\User::where('group_id', '=', $group->id)->update(array('group_id' => $users_group->id)); } if (isset($group->permissions) and !empty($group->permissions)) { $group->permissions()->delete(); } $group->delete(); Event::fire('mwi.group_deleted', array($group)); $this->data['message'] = __('groups::lang.Group was successfully destroyed')->get(ADM_LANG); $this->data['message_type'] = 'success'; return Redirect::to(ADM_URI . '/groups')->with($this->data); }