Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java =================================================================== diff -u -r081bc3d93d1a579339c13bebc7f708a9a69f3424 -r6839972f80008e9c58d185986a223cf4a8ba6de5 --- lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java (.../UserManagementService.java) (revision 081bc3d93d1a579339c13bebc7f708a9a69f3424) +++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java (.../UserManagementService.java) (revision 6839972f80008e9c58d185986a223cf4a8ba6de5) @@ -457,9 +457,14 @@ save(organisation); - if(organisation.getOrganisationType().getOrganisationTypeId().equals(OrganisationType.CLASS_TYPE)){ + if(organisation.getOrganisationType().getOrganisationTypeId().equals(OrganisationType.CLASS_TYPE)){ + Organisation pOrg = organisation.getParentOrganisation(); + // set parent's child orgs + Set children = pOrg.getChildOrganisations(); + children.add(organisation); + pOrg.setChildOrganisations(children); // get course managers and give them staff role in this new class - Vector managers = getUsersFromOrganisationByRole(organisation.getParentOrganisation().getOrganisationId(),Role.COURSE_MANAGER, false); + Vector managers = getUsersFromOrganisationByRole(pOrg.getOrganisationId(),Role.COURSE_MANAGER, false); for(UserDTO m: managers){ User user = (User)findById(User.class,m.getUserID()); UserOrganisation uo = new UserOrganisation(user,organisation);