Exemple #1
0
 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);
 }
Exemple #2
0
 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);
 }