Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserOrgSaveAction.java =================================================================== diff -u -r622101803252450b96cc9882a17ae20de4f6e431 -r7d91e93ee10b2f84a9a7cc6b83b0cacde0f7affc --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserOrgSaveAction.java (.../UserOrgSaveAction.java) (revision 622101803252450b96cc9882a17ae20de4f6e431) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserOrgSaveAction.java (.../UserOrgSaveAction.java) (revision 7d91e93ee10b2f84a9a7cc6b83b0cacde0f7affc) @@ -140,28 +140,11 @@ log.debug("no new users to add to orgId="+orgId); return mapping.findForward("userlist"); }else{ - request.setAttribute("roles",filterRoles(rolelist,false, organisation.getOrganisationType())); + request.setAttribute("roles",service.filterRoles(rolelist,false, organisation.getOrganisationType())); request.setAttribute("newUserOrganisations",newUserOrganisations); request.setAttribute("orgId",orgId); return mapping.findForward("userorgrole"); } } - - private List filterRoles(List rolelist, Boolean isSysadmin, OrganisationType orgType){ - List allRoles = new ArrayList(); - allRoles.addAll(rolelist); - Role role = new Role(); - if(!isSysadmin) { - role.setRoleId(Role.ROLE_SYSADMIN); - allRoles.remove(role); - } - if(orgType.getOrganisationTypeId().equals(OrganisationType.CLASS_TYPE)) { - role.setRoleId(Role.ROLE_COURSE_ADMIN); - allRoles.remove(role); - role.setRoleId(Role.ROLE_COURSE_MANAGER); - allRoles.remove(role); - } - return allRoles; - } } Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserRolesAction.java =================================================================== diff -u -rebf3cd425d492a39dcd1c67df54e1f86a376ace6 -r7d91e93ee10b2f84a9a7cc6b83b0cacde0f7affc --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserRolesAction.java (.../UserRolesAction.java) (revision ebf3cd425d492a39dcd1c67df54e1f86a376ace6) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserRolesAction.java (.../UserRolesAction.java) (revision 7d91e93ee10b2f84a9a7cc6b83b0cacde0f7affc) @@ -123,7 +123,7 @@ userRolesForm.set("userId",userId); userRolesForm.set("orgId", org.getOrganisationId()); // screen display vars - request.setAttribute("rolelist",filterRoles(rolelist,isSysadmin,orgType)); + request.setAttribute("rolelist",service.filterRoles(rolelist,isSysadmin,orgType)); request.setAttribute("login", user.getLogin()); request.setAttribute("fullName", user.getFullName()); request.setAttribute("orgName", org.getName()); @@ -154,31 +154,5 @@ return mapping.findForward("userrole"); } - - private List filterRoles(List rolelist, Boolean isSysadmin, OrganisationType orgType){ - List allRoles = new ArrayList(); - allRoles.addAll(rolelist); - Role role = new Role(); - if(!orgType.getOrganisationTypeId().equals(OrganisationType.ROOT_TYPE) || !isSysadmin) { - role.setRoleId(Role.ROLE_SYSADMIN); - allRoles.remove(role); - role.setRoleId(Role.ROLE_AUTHOR_ADMIN); - allRoles.remove(role); - } else { - role.setRoleId(Role.ROLE_AUTHOR); - allRoles.remove(role); - role.setRoleId(Role.ROLE_LEARNER); - allRoles.remove(role); - role.setRoleId(Role.ROLE_MONITOR); - allRoles.remove(role); - } - if(!orgType.getOrganisationTypeId().equals(OrganisationType.COURSE_TYPE)) { - role.setRoleId(Role.ROLE_COURSE_ADMIN); - allRoles.remove(role); - role.setRoleId(Role.ROLE_COURSE_MANAGER); - allRoles.remove(role); - } - return allRoles; - } } Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserRolesSaveAction.java =================================================================== diff -u -r622101803252450b96cc9882a17ae20de4f6e431 -r7d91e93ee10b2f84a9a7cc6b83b0cacde0f7affc --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserRolesSaveAction.java (.../UserRolesSaveAction.java) (revision 622101803252450b96cc9882a17ae20de4f6e431) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserRolesSaveAction.java (.../UserRolesSaveAction.java) (revision 7d91e93ee10b2f84a9a7cc6b83b0cacde0f7affc) @@ -96,7 +96,7 @@ if (roles.length < 1) { errors.add("roles", new ActionMessage("error.roles.empty")); saveErrors(request,errors); - request.setAttribute("rolelist",filterRoles(rolelist,request.isUserInRole(Role.SYSADMIN),org.getOrganisationType())); + request.setAttribute("rolelist",service.filterRoles(rolelist,request.isUserInRole(Role.SYSADMIN),org.getOrganisationType())); request.setAttribute("login", user.getLogin()); request.setAttribute("fullName", user.getFullName()); return mapping.findForward("userroles"); @@ -117,22 +117,5 @@ return mapping.findForward("userlist"); } - - private List filterRoles(List rolelist, Boolean isSysadmin, OrganisationType orgType){ - List allRoles = new ArrayList(); - allRoles.addAll(rolelist); - Role role = new Role(); - if(!isSysadmin) { - role.setRoleId(Role.ROLE_SYSADMIN); - allRoles.remove(role); - } - if(orgType.getOrganisationTypeId().equals(OrganisationType.CLASS_TYPE)) { - role.setRoleId(Role.ROLE_COURSE_ADMIN); - allRoles.remove(role); - role.setRoleId(Role.ROLE_COURSE_MANAGER); - allRoles.remove(role); - } - return allRoles; - } }