Index: lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserAction.java =================================================================== diff -u -rc1876c3d1c0a2e91c25cdd967107c12175ba50bf -rf1c9a47571045019bf62e662210df629c0217980 --- lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserAction.java (.../UserAction.java) (revision c1876c3d1c0a2e91c25cdd967107c12175ba50bf) +++ lams_admin/src/java/org/lamsfoundation/lams/admin/web/UserAction.java (.../UserAction.java) (revision f1c9a47571045019bf62e662210df629c0217980) @@ -92,7 +92,14 @@ if(orgId != null) { request.setAttribute("org",orgId); } - + + // remove sysadmin from role list for non-sysadmin users + User requestor = (User)service.getUserByLogin(request.getRemoteUser()); + if(!service.isUserInRole(requestor.getUserId(),service.getRootOrganisation().getOrganisationId(),Role.SYSADMIN)){ + Role sysadmin = new Role(); + sysadmin.setRoleId(Role.ROLE_SYSADMIN); + allRoles.remove(sysadmin); + } request.setAttribute("rolelist",allRoles); request.setAttribute("locales",locales);