diff options
| author | bwarsaw | 2000-09-15 20:50:47 +0000 |
|---|---|---|
| committer | bwarsaw | 2000-09-15 20:50:47 +0000 |
| commit | 0cbe09f82acbe4163fdff5870ea6d7ec6db367f8 (patch) | |
| tree | 5e9154d2bb0eb111e1a6c55990e3b82977e5e62f /Mailman/Cgi/admin.py | |
| parent | 9265600f5af93260c8cc31f05fbc49e4b18ee102 (diff) | |
| download | mailman-0cbe09f82acbe4163fdff5870ea6d7ec6db367f8.tar.gz mailman-0cbe09f82acbe4163fdff5870ea6d7ec6db367f8.tar.zst mailman-0cbe09f82acbe4163fdff5870ea6d7ec6db367f8.zip | |
Diffstat (limited to 'Mailman/Cgi/admin.py')
| -rw-r--r-- | Mailman/Cgi/admin.py | 35 |
1 files changed, 18 insertions, 17 deletions
diff --git a/Mailman/Cgi/admin.py b/Mailman/Cgi/admin.py index e227f69ba..35db4a973 100644 --- a/Mailman/Cgi/admin.py +++ b/Mailman/Cgi/admin.py @@ -756,31 +756,32 @@ def ChangeOptions(mlist, category, cgi_info, document): confirmed = 0 if cgi_info.has_key('newpw'): if cgi_info.has_key('confirmpw'): - if cgi_info.has_key('adminpw'): + if cgi_info.has_key('adminpw') and cgi_info['adminpw'].value: try: mlist.ConfirmAdminPassword(cgi_info['adminpw'].value) confirmed = 1 except Errors.MMBadPasswordError: - m = "Error: incorrect administrator password" - document.AddItem( - Header(3, Italic(FontAttr(m, color="ff5060")))) - confirmed = 0 + AddErrorMessage(document, + 'Incorrect administrator password', + tag='Error: ') if confirmed: - new = cgi_info['newpw'].value - confirm = cgi_info['confirmpw'].value - if new == confirm: + new = string.strip(cgi_info['newpw'].value) + confirm = string.strip(cgi_info['confirmpw'].value) + if new == '' and confirm == '': + AddErrorMessage(document, + 'Empty admin passwords are not allowed', + tag='Error: ') + elif new == confirm: mlist.password = crypt(new, Utils.GetRandomSeed()) # Re-authenticate (to set new cookie) mlist.WebAuthenticate(password=new, cookie='admin') else: - m = 'Error: Passwords did not match.' - document.AddItem( - Header(3, Italic(FontAttr(m, color="ff5060")))) - + AddErrorMessage(document, 'Passwords did not match', + tag='Error: ') else: - m = 'Error: You must type in your new password twice.' - document.AddItem( - Header(3, Italic(FontAttr(m, color="ff5060")))) + AddErrorMessage(document, + 'You must type in your new password twice', + tag='Error: ') # # for some reason, the login page mangles important values for the list # such as .real_name so we only process these changes if the category @@ -920,9 +921,9 @@ def ChangeOptions(mlist, category, cgi_info, document): -def AddErrorMessage(doc, errmsg, *args): +def AddErrorMessage(doc, errmsg, tag='Warning: ', *args): doc.AddItem(Header(3, Bold(FontAttr( - 'Warning: ', color="#ff0000", size="+2")).Format() + + tag, color="#ff0000", size="+2")).Format() + Italic(errmsg % args).Format())) |
