group.go 919 B

1234567891011121314151617181920212223242526272829303132333435
  1. package permission
  2. func (gp *PermissionGroup) AddModule(modulename string) {
  3. if !inSlice(gp.AccessibleModules, modulename) {
  4. gp.AccessibleModules = append(gp.AccessibleModules, modulename)
  5. }
  6. }
  7. func (gp *PermissionGroup) RemoveModule(modulename string) {
  8. newModuleList := []string{}
  9. if inSlice(gp.AccessibleModules, modulename) {
  10. for _, thisModuleName := range gp.AccessibleModules {
  11. if thisModuleName != modulename {
  12. newModuleList = append(newModuleList, thisModuleName)
  13. }
  14. }
  15. gp.AccessibleModules = newModuleList
  16. }
  17. }
  18. //Remove this permission group
  19. func (gp *PermissionGroup) Remove() {
  20. db := gp.parent.database
  21. //Close the groups' storage pool
  22. gp.StoragePool.Close()
  23. //Remove the group from database
  24. db.Delete("permission", "group/"+gp.Name)
  25. db.Delete("permission", "isadmin/"+gp.Name)
  26. db.Delete("permission", "quota/"+gp.Name)
  27. db.Delete("permission", "interfaceModule/"+gp.Name)
  28. }