Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/IUserManagementService.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/IUserManagementService.java,v diff -u -r1.18 -r1.19 --- lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/IUserManagementService.java 6 Jun 2006 07:04:24 -0000 1.18 +++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/IUserManagementService.java 7 Jun 2006 02:49:15 -0000 1.19 @@ -469,5 +469,15 @@ public List getAllLanguages(); public List getRolePrivilegesByRoleId(Integer id); + + public List getUserOrganisationsByType(Integer organisationTypeId); + + public List getOrganisationsByType(Integer organisationTypeId); + + public boolean isUserSysAdmin(String login); + + public Organisation getRootOrganisation(); + + public boolean isUserInRoleInOrganisation(String login, Integer roleId, Integer orgId); } Index: lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java =================================================================== RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java,v diff -u -r1.23 -r1.24 --- lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java 6 Jun 2006 07:04:24 -0000 1.23 +++ lams_common/src/java/org/lamsfoundation/lams/usermanagement/service/UserManagementService.java 7 Jun 2006 02:49:15 -0000 1.24 @@ -702,4 +702,25 @@ public List getRolePrivilegesByRoleId(Integer id) { return rolePrivilegeDAO.getRolePrivilegesByRoleId(id); } + + public List getUserOrganisationsByType(Integer organisationTypeId) { + return userOrganisationDAO.getUserOrganisationsByType(organisationTypeId); + } + + public List getOrganisationsByType(Integer organisationTypeId) { + return organisationDAO.getOrganisationsByType(organisationTypeId); + } + + public boolean isUserSysAdmin(String login) { + return isUserInRoleInOrganisation(login,Role.ROLE_SYSADMIN,getRootOrganisation().getOrganisationId()); + } + + public Organisation getRootOrganisation() { + return (Organisation)getOrganisationsByType(OrganisationType.ROOT_TYPE).get(0); + } + + public boolean isUserInRoleInOrganisation(String login, Integer roleId, Integer orgId) { + return userOrganisationRoleDAO.getUserOrganisationRole(userOrganisationDAO.getUserOrganisation(userDAO.getUserByLogin(login).getUserId(),orgId).getUserOrganisationId(),roleId)!=null; + } + }