diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/users/entities/User.java b/navalplanner-business/src/main/java/org/navalplanner/business/users/entities/User.java index 06c4b9e9f..166eb7cec 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/users/entities/User.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/users/entities/User.java @@ -166,6 +166,10 @@ public class User extends BaseEntity { return disabled; } + public boolean isAdministrator() { + return isInRole(UserRole.ROLE_ADMINISTRATION); + } + @AssertTrue(message="login name is already being used by another user") public boolean checkConstraintUniqueLoginName() { diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/users/UserModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/users/UserModel.java index e4d0ceaa3..0925cd458 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/users/UserModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/users/UserModel.java @@ -65,7 +65,18 @@ public class UserModel implements IUserModel { @Override @Transactional(readOnly=true) public List getUsers() { - return userDAO.list(User.class); + List users = userDAO.list(User.class); + initializeUsers(users); + return users; + } + + private void initializeUsers(List users) { + for (User user : users) { + user.getRoles().size(); + for (Profile profile : user.getProfiles()) { + profile.getRoles().size(); + } + } } @Override diff --git a/navalplanner-webapp/src/main/webapp/users/_listUsers.zul b/navalplanner-webapp/src/main/webapp/users/_listUsers.zul index 2d0e2df40..59861dc26 100644 --- a/navalplanner-webapp/src/main/webapp/users/_listUsers.zul +++ b/navalplanner-webapp/src/main/webapp/users/_listUsers.zul @@ -25,12 +25,14 @@ +