diff options
Diffstat (limited to 'Mailman/Cgi/options.py')
| -rw-r--r-- | Mailman/Cgi/options.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/Mailman/Cgi/options.py b/Mailman/Cgi/options.py index 26d5115d0..53a15ed7a 100644 --- a/Mailman/Cgi/options.py +++ b/Mailman/Cgi/options.py @@ -436,7 +436,6 @@ def main(): # flags. if newval is None: continue - elif flag == mm_cfg.DisableDelivery: status = mlist.getDeliveryStatus(user) # Here, newval == 0 means enable, newval == 1 means disable @@ -446,9 +445,12 @@ def main(): newval = MemberAdaptor.BYUSER else: continue - elif newval == mlist.getMemberOption(user, flag): continue + # Should we warn about one more digest? + if flag == mm_cfg.Digests and \ + newval == 0 and mlist.getMemberOption(user, flag): + digestwarn = 1 newvals.append((flag, newval)) @@ -490,7 +492,12 @@ def main(): elif flag == mm_cfg.DisableDelivery: mlist.setDeliveryStatus(user, newval) else: - mlist.setMemberOption(user, flag, newval) + try: + mlist.setMemberOption(user, flag, newval) + except Errors.CantDigestError: + cantdigest = 1 + except Errors.MustDigestError: + mustdigest = 1 # Set the topics information. mlist.setMemberTopics(user, topicnames) mlist.Save() |
