diff options
| author | bwarsaw | 2001-07-29 19:01:47 +0000 |
|---|---|---|
| committer | bwarsaw | 2001-07-29 19:01:47 +0000 |
| commit | 4fc1513debf661abab10b41ed76a90832bddc428 (patch) | |
| tree | 9558bd3366e3afed2990a9b3dd608c41b8a5a44c /Mailman/Cgi/admin.py | |
| parent | 409c2af09d5d44222d2e97de46b8adae78b385a9 (diff) | |
| download | mailman-4fc1513debf661abab10b41ed76a90832bddc428.tar.gz mailman-4fc1513debf661abab10b41ed76a90832bddc428.tar.zst mailman-4fc1513debf661abab10b41ed76a90832bddc428.zip | |
Diffstat (limited to 'Mailman/Cgi/admin.py')
| -rw-r--r-- | Mailman/Cgi/admin.py | 25 |
1 files changed, 11 insertions, 14 deletions
diff --git a/Mailman/Cgi/admin.py b/Mailman/Cgi/admin.py index 4882ca5f3..4c4f4959e 100644 --- a/Mailman/Cgi/admin.py +++ b/Mailman/Cgi/admin.py @@ -38,6 +38,7 @@ from Mailman import MailList from Mailman import Errors from Mailman import MailCommandHandler from Mailman import i18n +from Mailman.UserDesc import UserDesc from Mailman.htmlformat import * from Mailman.Cgi import Auth from Mailman.Logging.Syslog import syslog @@ -805,17 +806,16 @@ def membership_options(mlist, cgidata, doc, form): longest = 0 if members: names = filter(None, [mlist.getMemberName(s) for s in members]) - if names: - longest = max([len(s) for s in names]) + # Make the name field at least as long as the longest email address + longest = max([len(s) for s in names + members]) # Now populate the rows for addr in members: link = Link(mlist.GetOptionsURL(addr, obscure=1), mlist.getMemberCPAddress(addr)) fullname = mlist.getMemberName(addr) - if fullname: - name = TextBox(addr + '_realname', fullname, size=longest).Format() - else: - name = '' + if fullname is None: + fullname = '' + name = TextBox(addr + '_realname', fullname, size=longest).Format() cells = [link.Format() + '<br>' + name + Hidden('user', urllib.quote(addr)).Format(), @@ -831,6 +831,7 @@ def membership_options(mlist, cgidata, doc, form): checked = 0 box = CheckBox('%s_%s' % (addr, opt), value, checked) cells.append(Center(box).Format()) + # FIXME: use MemberAdaptor interface if mlist.members.has_key(addr): cells.append(Center(CheckBox(addr + '_digest', 'off', 0).Format())) else: @@ -844,7 +845,7 @@ def membership_options(mlist, cgidata, doc, form): checked = 0 cells.append(Center(CheckBox('%s_plain' % addr, value, checked))) # User's preferred language - langpref = mlist.GetPreferredLanguage(addr) + langpref = mlist.getMemberLanguage(addr) langs = mlist.GetAvailableLanguages() langdescs = [_(Utils.GetLanguageDescr(lang)) for lang in langs] try: @@ -1178,13 +1179,9 @@ def change_options(mlist, category, cgidata, doc): subscribe_errors = [] subscribe_success = [] - # for satisfying the ApprovedAddMember() interface - class UserDesc: pass - for entry in entries: - userdesc = UserDesc() - userdesc.fullname, userdesc.address = parseaddr(entry) - userdesc.digest = digest + fullname, address = parseaddr(entry) + userdesc = UserDesc(address, fullname, digest=digest) try: mlist.ApprovedAddMember(userdesc, send_welcome_msg, send_admin_notif) @@ -1279,7 +1276,7 @@ def change_options(mlist, category, cgidata, doc): mlist.setMemberName(user, newname) newlang = cgidata.getvalue(user+'_language') - oldlang = mlist.GetPreferredLanguage(user) + oldlang = mlist.getMemberLanguage(user) if newlang and newlang <> oldlang: mlist.setMemberLanguage(user, newlang) |
