Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/OrgManageAction.java =================================================================== RCS file: /usr/local/cvsroot/lams_admin/src/java/org/lamsfoundation/lams/admin/web/OrgManageAction.java,v diff -u -r1.8 -r1.9 --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/OrgManageAction.java 13 Jul 2006 04:33:45 -0000 1.8 +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/OrgManageAction.java 3 Aug 2006 01:14:58 -0000 1.9 @@ -41,6 +41,7 @@ import org.lamsfoundation.lams.usermanagement.Organisation; import org.lamsfoundation.lams.usermanagement.OrganisationType; import org.lamsfoundation.lams.usermanagement.Role; +import org.lamsfoundation.lams.usermanagement.User; import org.lamsfoundation.lams.usermanagement.UserOrganisation; import org.lamsfoundation.lams.usermanagement.UserOrganisationRole; import org.lamsfoundation.lams.usermanagement.service.IUserManagementService; @@ -110,7 +111,8 @@ log.debug("orgType:"+orgManageForm.getType()); List orgManageBeans = new ArrayList(); //if(getService().isUserSysAdmin(username)){ - if(request.isUserInRole(Role.SYSADMIN)){ + Integer userId = getService().getUserByLogin(request.getRemoteUser()).getUserId(); + if(request.isUserInRole(Role.SYSADMIN) || getService().isUserInRole(userId, orgId, Role.COURSE_ADMIN) || getService().isUserInRole(userId, orgId, Role.COURSE_MANAGER)){ Integer type; if(orgManageForm.getType().equals(OrganisationType.ROOT_TYPE)){ type = OrganisationType.COURSE_TYPE; @@ -133,32 +135,6 @@ orgManageBean.setEditable(true); orgManageBeans.add(orgManageBean); } - }else{ - Set userOrganisations = getService().getUserByLogin(username).getUserOrganisations(); - if(userOrganisations!=null){ - Iterator iter = userOrganisations.iterator(); - while(iter.hasNext()){ - OrgManageBean orgManageBean = new OrgManageBean(); - UserOrganisation userOrganisation = (UserOrganisation)iter.next(); - Organisation organisation = userOrganisation.getOrganisation(); - if(organisation.getParentOrganisation()!=null){ - orgManageBean.setEditable(false); - if(organisation.getParentOrganisation().getOrganisationId().equals(orgId)){ - BeanUtils.copyProperties(orgManageBean,organisation); - orgManageBean.setStatus(organisation.getOrganisationState().getDescription()); - Iterator iter2 = userOrganisation.getUserOrganisationRoles().iterator(); - while(iter2.hasNext()){ - UserOrganisationRole userOrganisationRole = (UserOrganisationRole)iter2.next(); - if(userOrganisationRole.getRole().isCourseManager()||userOrganisationRole.getRole().isCourseAdmin()){ - orgManageBean.setEditable(true); - break; - } - } - orgManageBeans.add(orgManageBean); - } - } - } - } } orgManageForm.setOrgManageBeans(orgManageBeans); request.setAttribute("OrgManageForm",orgManageForm);