Fix duplicate entry error to be more descriptive.

Add TurboGears to required package list
Clear password on Edit Person page.
Change uidnumber/gidnumber on Add Person to say 'Generated by server'
This commit is contained in:
Kevin McCarthy
2007-09-07 16:53:34 -07:00
parent 9bb9dbae42
commit 903e11631c
4 changed files with 11 additions and 7 deletions

View File

@@ -94,6 +94,10 @@ class Root(controllers.RootController):
rv = client.add_user(new_user)
turbogears.flash("%s added!" % kw['uid'])
raise turbogears.redirect('/usershow', uid=kw['uid'])
except ipaerror.exception_for(ipaerror.LDAP_DUPLICATE):
turbogears.flash("Person with login '%s' already exists" %
kw.get('uid'))
return dict(form=user_new_form, tg_template='ipagui.templates.usernew')
except ipaerror.IPAError, e:
turbogears.flash("User add failed: " + str(e))
return dict(form=user_new_form, tg_template='ipagui.templates.usernew')
@@ -107,6 +111,10 @@ class Root(controllers.RootController):
user = client.get_user_by_uid(uid, user_fields)
user_dict = user.toDict()
# Edit shouldn't fill in the password field.
if user_dict.has_key('userpassword'):
del(user_dict['userpassword'])
# store a copy of the original user for the update later
user_data = b64encode(dumps(user_dict))
user_dict['user_orig'] = user_data

View File

@@ -43,7 +43,6 @@ class UserNewForm(widgets.Form):
params = ['user']
fields = [UserFields.uid, UserFields.givenname,
UserFields.uidnumber, UserFields.gidnumber,
UserFields.sn, UserFields.mail]
validator = UserNewValidator()

View File

@@ -125,9 +125,7 @@
py:content="user.uidnumber.label" />:
</th>
<td>
<span py:replace="user.uidnumber.display(value_for(user.uidnumber))" />
<span py:if="tg.errors.get('uidnumber')" class="fielderror"
py:content="tg.errors.get('uidnumber')" />
Generated by server
</td>
</tr>
@@ -137,9 +135,7 @@
py:content="user.gidnumber.label" />:
</th>
<td>
<span py:replace="user.gidnumber.display(value_for(user.gidnumber))" />
<span py:if="tg.errors.get('gidnumber')" class="fielderror"
py:content="tg.errors.get('gidnumber')" />
Generated by server
</td>
</tr>
</table>

View File

@@ -18,6 +18,7 @@ mozldap-devel
mod_python
gcc
python-ldap
TurboGears
Installation example: