Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserManageAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserManageAction.java,v diff -u -r1.9 -r1.10 --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserManageAction.java 18 Jul 2006 01:31:05 -0000 1.9 +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserManageAction.java 20 Jul 2006 23:48:46 -0000 1.10 @@ -106,16 +106,16 @@ Integer userId = getService().getUserByLogin(request.getRemoteUser()).getUserId(); - Integer orgIdOfCourseAdmin = (orgType.getOrganisationTypeId().equals(OrganisationType.CLASS_TYPE)) ? pOrg.getOrganisationId() : orgId; + Organisation orgOfCourseAdmin = (orgType.getOrganisationTypeId().equals(OrganisationType.CLASS_TYPE)) ? pOrg : organisation; // check permission if(request.isUserInRole(Role.SYSADMIN)){ request.setAttribute("canAdd",true); - }else if(!getService().isUserInRole(userId,orgIdOfCourseAdmin,Role.COURSE_ADMIN)){ + }else if(!getService().isUserInRole(userId,orgOfCourseAdmin.getOrganisationId(),Role.COURSE_ADMIN)){ errors.add("authorisation",new ActionMessage("error.authorisation")); saveErrors(request,errors); return mapping.findForward("error"); }else{ - request.setAttribute("canAdd",organisation.getCourseAdminCanAddNewUsers()); + request.setAttribute("canAdd",orgOfCourseAdmin.getCourseAdminCanAddNewUsers()); } // get list of users in org Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserOrgAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserOrgAction.java,v diff -u -r1.5 -r1.6 --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserOrgAction.java 17 Jul 2006 05:04:46 -0000 1.5 +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserOrgAction.java 20 Jul 2006 23:48:46 -0000 1.6 @@ -98,11 +98,12 @@ // get list of users in org User user = (User)getService().getUserByLogin(request.getRemoteUser()); List users = new ArrayList(); + Organisation orgOfCourseAdmin = (orgType.equals(OrganisationType.CLASS_TYPE)) ? parentOrg : organisation; if(request.isUserInRole(Role.SYSADMIN)){ users = getService().findAll(User.class); - }else if(getService().isUserInRole(user.getUserId(),orgId,Role.COURSE_ADMIN)){ - if(organisation.getCourseAdminCanAddNewUsers()){ - if(organisation.getCourseAdminCanBrowseAllUsers()){ + }else if(getService().isUserInRole(user.getUserId(),orgOfCourseAdmin.getOrganisationId(),Role.COURSE_ADMIN)){ + if(orgOfCourseAdmin.getCourseAdminCanAddNewUsers()){ + if(orgOfCourseAdmin.getCourseAdminCanBrowseAllUsers()){ users = getService().findAll(User.class); }else if(orgType.equals(new Integer(OrganisationType.CLASS_TYPE))){ users = getService().getUsersFromOrganisation(parentOrg.getOrganisationId());