modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java | 10 +++++----- modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/auth/SubjectManagerBean.java | 8 ++++++++ 2 files changed, 13 insertions(+), 5 deletions(-)
New commits: commit 0715ed6e2d1d6d21cfea0e4064fdeb506f91da59 Author: Ian Springer ian.springer@redhat.com Date: Tue Jan 25 18:34:34 2011 -0500
username is no longer editable on user edit page (fixes https://bugzilla.redhat.com/show_bug.cgi?id=672684)
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java index e1f1042..314d279 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java @@ -138,13 +138,13 @@ public class UserEditView extends AbstractRecordEditor<UsersDataSource> { List<FormItem> items = new ArrayList<FormItem>();
// Username field should be editable when creating a new user, but should be read-only for existing users. - if (form.isNewRecord()) { - TextItem nameItem = new TextItem(UsersDataSource.Field.NAME); - items.add(nameItem); + FormItem nameItem; + if (isNewRecord()) { + nameItem = new TextItem(UsersDataSource.Field.NAME); } else { - StaticTextItem nameItem = new StaticTextItem(UsersDataSource.Field.NAME); - items.add(nameItem); + nameItem = new StaticTextItem(UsersDataSource.Field.NAME); } + items.add(nameItem);
StaticTextItem isLdapItem = new StaticTextItem(UsersDataSource.Field.LDAP); items.add(isLdapItem); diff --git a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/auth/SubjectManagerBean.java b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/auth/SubjectManagerBean.java index ff2568f..1941085 100644 --- a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/auth/SubjectManagerBean.java +++ b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/auth/SubjectManagerBean.java @@ -213,6 +213,14 @@ public class SubjectManagerBean implements SubjectManagerLocal, SubjectManagerRe throw new PermissionException("You cannot disable the system user [" + subjectToModify.getName() + "]."); }
+ Subject attachedSubject = getSubjectById(subjectToModify.getId()); + if (attachedSubject == null) { + throw new IllegalArgumentException("No user exists with id [" + subjectToModify.getId() + "]."); + } + if (!attachedSubject.getName().equals(subjectToModify.getName())) { + throw new IllegalArgumentException("You cannot change a user's username."); + } + Set<Role> newRoles = subjectToModify.getRoles(); if (newRoles != null) { Set<Role> currentRoles = new HashSet<Role>(roleManager.findRolesBySubject(subjectToModify.getId(),
rhq-commits@lists.fedorahosted.org