diff options
author | Rob Crittenden <rcritten@redhat.com> | 2008-05-13 11:56:40 -0400 |
---|---|---|
committer | Rob Crittenden <rcritten@redhat.com> | 2008-05-13 11:59:46 -0400 |
commit | b1cc4199fa152957aaabed1b22e8b828d054d9c6 (patch) | |
tree | a7c40d461580e1232dc70bbc93e67e5ac91f88dc /ipa-server/ipa-gui | |
parent | a86b1eaeedaf18770921ea02e1c9e94a6f7f6a51 (diff) | |
download | freeipa-b1cc4199fa152957aaabed1b22e8b828d054d9c6.tar.gz freeipa-b1cc4199fa152957aaabed1b22e8b828d054d9c6.tar.xz freeipa-b1cc4199fa152957aaabed1b22e8b828d054d9c6.zip |
The admin user doesn't have the inetorgperson objectclass so don't have a givenname attribute. The UI is currently hardcoded to require "first name" which renders the admin user uneditable via the UI.
This is a hack that will allow admin to be edited, assuming that one doesn't
try to add a firstname field.
440548
Diffstat (limited to 'ipa-server/ipa-gui')
-rw-r--r-- | ipa-server/ipa-gui/ipagui/subcontrollers/user.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/ipa-server/ipa-gui/ipagui/subcontrollers/user.py b/ipa-server/ipa-gui/ipagui/subcontrollers/user.py index 0a79fc794..9232f305e 100644 --- a/ipa-server/ipa-gui/ipagui/subcontrollers/user.py +++ b/ipa-server/ipa-gui/ipagui/subcontrollers/user.py @@ -413,6 +413,16 @@ class UserController(IPAController): # later the update will not be processed cherrypy.session['uid'] = user_dict.get('uid') + # Hack. The admin user doesn't have inetorgperson as an + # objectclass so don't require the givenName attribute if + # this objectclass doesn't exist in the record. + oc = [x.lower() for x in user_dict.get('objectclass')] + try: + p = oc.index('inetorgperson') + except ValueError: + # This entry doesn't have inetorgperson so don't require gn + user_edit_form.validator.fields.get('givenname').not_empty=False + return dict(form=user_edit_form, user=user_dict, user_groups=user_groups_dicts) except ipaerror.IPAError, e: |